免费找题库的网站推荐 计算机二级选择题题库( 三 )


s=a ;
if(a<b)
s=b;
s*=s;
printf(“%d”,s); }
A) 36
B) 64
C) 48
D) 以上都不对
18、参考答案:B
本题中a的值为6,b的值为8,最后s的值为8,s*=s等价于s=s*s 。
19.有以下程序:
main()
{ int k=5,n=0;
while(k>0) { switch(k) {
default : break;
case 1 : n+=k;
case 2 :
case 3 : n+=k;
}
k--;
}
printf(“%d\n”,n);
}
程序运行后的输出结果是() 。
A) 0
B) 4
C) 6
D) 7
19、参考答案:D
本题考查的是switch语句 。在switch语句中,表达式的值与某一个case后面的常量表达式的值相等时,就执行此case后面的语句,若所有的case中的常量表达式的值都没有与表达式的值匹配的,就执行default后面的语句,各个case和default的出现次序不影响执行结果 。所以在本题中,当k=5和k=4的时候,case都没有与其匹配的值,所以执行了default语句;当k=3时,执行”case 3 : n+=k;”得n=3,然后执行default;当k=2时,执行”case 2 : case 3 : n+=k;”得n=5,然后执行default;当k=1时,执行”case 1 : n+=k; case 2 : case 3 : n+=k;”使得n加两次k,得到n=7 。
20.有以下程序:
#include <stdio.h>
main() { int x;
scanf(“%d”,& x);
if(x<=3); else
if(x!=10) printf(“%d\n”,x);
}
程序运行时,输入的值在哪个范围才会有输出结果() 。
A) 不等于10的整数
B) 大于3且不等10的整数
C) 大于3或等于10的整数
D) 小于3的整数
20、参考答案:B
if…else控制结构中,else总是与最近的未配对的if匹配 。本题的执行过程为:如果输入整数小于3则不进行任何操作,否则判断是否不等于10,若为真则进行输出 。因此程序输出的数据为大于3且不等于10的整数 。
21.有以下程序:
#include <stdio.h>
main(){ int a=1,b=0;
printf(“%d,”,b=a+b);
printf(“%d\n”,a=2*b)}
程序运行后的输出结果是() 。
A) 0,0
B) 1,0
C) 3,2
D) 1,2
22.有以下程序:
main(){ int num[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},i,j;
for(i=0;i<4;i++) { for(j=0;j<=i;j++)printf(“%4c”, ’ ‘);
for(j=;j<4;j++)printf(“%4d”,num[i][j]);
printf(“\n”);
}
}
若要按以下形式输出数组右上半三角
1 2 3 4
6 7 8
 11 12
16
则在程序下划线处应填入的语句是() 。
A) i-1
B) i+1
C) i
D) 4-i
22、参考答案:C
此题中嵌套了两个for语句,第一个用来输出空格,第二个用来输出数字 。如此类型的输出某种格式的考题,一般是采用多重循环来解决,需要考生找出输出数据的特点,并用相对应的数学公式表达出来 。
23.以下程序段中,与语句:k=a>b?(b>c?1:0):0;功能相同的是() 。
A) if((a>b)&&(b>c))k=1;
else k=0;
B) if((a>b)‖(b>c))k=1;
else k=0;
C) if(a<=b)k=0;
else if(b<=c)k=1;
D) if(a>b)k=1;
else if(b>c) k=1;
else k=0;
23、参考答案:A
表达式k=a>b?(b>c?1∶0)∶0表示:如果(a>b)条件为真,则k取值(b>c?1∶0),否则k取值0;当a>b的情况下,如果b>c,则k值为1,否则为0 。所以该表达式与选项A)功能相同 。


以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: