信息素养大赛模拟题三
得分:100 分
选择题
1、已知两个整数a, b, 下列哪种方法不能计算出a, b的最大公约数( )
2、下面C++数组的定义中,会丢失数据的是( )。
3、32位计算机中,C++的整型变量int能够表示的数据范围是( )
4、
C++的数据类型转换让人很难琢磨透,下列代码输出的值是( )
int a=3;
int b=2;
cout<<a/b*1.0<<endl;
5、下列说法错误的是?( )
6、下面C++代码执行后的输出是?()
int n, i, result;
n = 81;
i = 1, result = 1;
while (i * i <= n){
if (n % (i * i) == 0)
result = i * i;
i += 1;
}
cout << result;
7、整数-5的16位补码表示是( )
8、执行下面C++代码后输出的第一个数是( )。
int main(){
int a[20], i;
for(i = 0; i < 20; i++)
a[i] = i+1;
for( ; i > 0; i--)
cout << a[i-1] << " ";
cout << endl;
return 0;
}
9、定义字符数组 char str[20] = {'G', 'E', 'S', 'P'}; ,则 str 的字符串长度为( )。
10、定义整型变量 int a=3, b=16 ,则 a|b 的值和 a+b 的关系是( )。
11、二进制数 11 1011 1001 0111 和 01 0110 1110 1011 进行逻辑与运算的结果是( )。
12、在C++中, cout << (5 % 2 && 5 % 3) 的输出是( )。
13、
下面C++代码执行后的输出是( )。
int loopCount = 0;
for (int i=0; i < 10; i++)
for (int j=1; j < i; j++)
loopCount += 1;
cout << loopCount;
14、
下面C++代码用于实现如下图所示的效果,其有关说法正确的是( )
1
2 4
3 6 9
4 8 12 16
5 10 15 20 25
for (int i = 1; i < 6; i++){ // L1
for (int j = 1; j < i+1; j++) //L2
cout << i*j << " ";
cout << endl;
}
15、
下面C++代码执行后,输出是( )。
int cnt1 = 0, cnt2 = 0;
for (int i = 0; i < 10; i++){
if (i % 2 == 0)
continue;
if (i % 2)
cnt1 += 1;
else if (i % 3 == 0)
cnt2 += 1;
}
cout << cnt1 << " " << cnt2;