Problem A: 信息学竞赛练习题

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Special Judger Creator:
Submit:25 Solved:0

Description

单选题:

1.以下运算符中,优先级最高的是:()

A.*=

B.||

C.&&

D.>=

2.以下变量命名不符合规范的是?()

A. day

B. for

C.my_name

D._school

3.在 C++中使用cincout来输入输出,可以用以下哪两个语句替代 ()

A.scanf(),printf()

B. scan(),print()

C. for(),if()

D. get(),put()

4.已知:double a=123.4;int b=a*10;double c=b/10.0;则执行语句:cout<<c<<end1;

输出在屏幕的值为()

A.123.4

B.123.4000000

C.123

D.123.000000

5.要通过什么方法才能将char c中的字符转化为大写字符()

A.c-‘A’+’a’

B. c-‘a’+’A’

C..c-‘b’+’a’

D.c-‘a’+’a’


6.二进制数 1001011加上二进制数1011,运算结果转换成十进制是多少?()

A. 86

B.96

C.97

D.87

7. for(i=0;i<=10;i++)这个循环结束后,i的值是()

A. 9

B.10

C.11

D.12

8.下列程序的循环次数是()次。

int k=0;

while(k<10){

if(k<1) k++;

if(k==4) break:

k++;

}

A. 5

B.死循环,不能确定循环次数

C.6

D.3

9.标准ASCII(American Standard Code for Information Interchange, 美国信

息交换标准码)使用二进制数组合来表示(18)种可能的字符,包括大写和小写字母、

数字 0~9、标点符号,以及在美式英语中使用的特殊控制字符。

A.256

B.128

C.64

D.32

10.若w=1,x=2,y=3,z=4,则条件表达式w>x?w:z<y*10?y:z的值是()

A.4

B.3

C.2

D.1

11.小明写程序时很不注意格式的规范,当他写完下面一段程序后自己也看不清程序逻

辑了,请大家帮他分析一下: a=1,b=5,c=4,d=3,执行完这段程序后x的值是()

x=3

For(int i=a;i<b;i++){

       If(i%d==0 || i%c==0) x++;

}

Cout<<x<<endl;

A.1

B.4

C.5

D.6

12.已知一个数组int a[]={1,3,5,7,9} 请问声明后的a数组大小,以及a[3]的值()

A.5,7

B. 6,7

C. 3,1

D. 5,5

13. 求 a=3+4%5*2的结果()

A.4

B.10;

C.11

D.14

14.请问以下计算的结果a=15.0%3

A.0

B.5.

C.报错,程序无法运行

D.5.0

15. 二进制数 - 10 的原码、反码、补码正确的是( )
A. 10001010
1111010111110110
B. 10001010
1111011011110101
C. 11110110
1000100110001010
D. 11110101
1000101010001001

16.对于正数 +5,其原码、反码、补码分别是( )
A. 00000101
0000010100000101
B. 00000101
1111101011111011
C. 10000101
1111101011111011
D. 10000101
0000010100000101

填空题:

17.

十进制数 1008转化为十六进制数为:()

18.

十六进制数A7转换为十进制为多少:()

19

C++中当一个函数为int  get(double x) ,则该函数应返回什么数据类型()

20.

若有 int a[10]={1,2,3,4,5,6,7,8,9,10};, a[a[1]+2*a[2]-(3-0)]的值是()

21.对于递推公式:F(n)=F(n-1)+3,已知F(1)=2,求F(5)的值是()

22.有以下程序:

int i,s=2;

for(i=0;i<20;i++){

s+=i;

i++;

}

cout<<s;

程序执行后的输出结果s的值是()

23.

定义如下变量和数组:

int k;

int a[5]={9,8,7};

则语句 for (k=1;k<5 ;k++) cout<<a[k] <<

的输出结果是()(用空格分隔每个值)

24.

两个整数为5624求这对数的最小公倍数,

25.

10个三好学生名额分配到7个班级,每个班级至少有一个名额,一共有几种不同的分配方案


代码阅读题:
1.

#include<bits/stdc++.h>

using namespace std;

int main(){

    string s;

    cin>>s;

    for(int i=0;i<s.size();i++)

    {

       if(s[i]>='a' && s[i]<='z'){

           s[i]=s[i]-'a'+'A';

           cout<<s[i];

       }

       else if(s[i]>='0' && s[i]<='9'){

           cout<<s[(s[i]-'0')%5];

       }

    }

    return 0;

}

题目编号

26

27

28

输入数据

abcd

abcdef46

ilovec++6

输出数据

2.

#include<bits/stdc++.h>

using namespace std;

int fun(int n){

    if(n==1||n==0) return 1;

    else return n+fun(n-1)+fun(n-2);

}

int main(){

    int a;

    cin>>a;

    cout<<fun(a)<<endl;

    return 0;

}

题目编号

29

30

31

输入数据

1

3

6

输出数据


HINT

题目中出现要输出空格的,都只需空一格。

在输入答案的时候,选项均为大写,要在编号后面空一格输入自己的答案