经典题整理计算机二级C语言考试选择题2.docx
《经典题整理计算机二级C语言考试选择题2.docx》由会员分享,可在线阅读,更多相关《经典题整理计算机二级C语言考试选择题2.docx(25页珍藏版)》请在冰豆网上搜索。
经典题整理计算机二级C语言考试选择题2
100、有如下程序
#include
voidmain()
{intn=9;
while(n>6){n--;printf("%d",n);}
}
该程序段的输出结果是_____B_____.
A)987B)876C)8765D)9876
101、有如下程序
#include
voidmain()
{inti,sum=0;
for(i=1;i<=3;sum++)sum+=i;
printf("%d\n",sum);
}
该程序的执行结果是______C_____.
A)6B)3C)死循环D)0
102、以下循环体的执行次数是___D____
#include
voidmain()
{inti,j;
for(i=0,j=1;i<=j+1;i+=2,j--)
printf("%d\n",i);
}
A)3B)2C)1D)0
103、在执行以下程序时,如果从键盘上输入:
ABCdef<回车>,则输出为____B____.
#include
voidmain()
{charch;
while((ch=getchar())!
='\n')
{if(ch>='A'&&ch<='Z')ch=ch+32;
elseif(ch>='a'&&ch<'z')ch=ch-32;
printf("%c",ch);
}
printf("\n");
}
A)ABCdefB)abcDEFC)abcD)DEF
104、下面程序的输出结果是____D______.
main()
{
inti,k=0,a=0,b=0;
for(i=1;i<=4;i++)
{
k++;
if(k%2==0){a=a+k;continue;}
b=b+k;
a=a+k;
}
printf("k=%da=%db=%d\n",k,a,b);
}
A)k=5a=10b=4B)k=3a=6b=4
C)k=4a=10b=3D)k=4a=10b=4
105、执行下面程序段后,k的值是____D_____.
inti,j,k;
for(i=0,j=10;ik=i+j;
A)9B)11C)8D)10
106、下面程序是计算n个数的平均值,请填空.____B___
#include
voidmain()
{inti,n;
floatx,avg=0.0;
scanf("%d",&n);
for(i=0;i{scanf("%f",&x);
avg=avg+______;}
avg=________;
printf("avg=%f\n",avg);
}
A)iB)xC)xD)i
avg/iavg/navg/xavg/n
107、以下程序的功能是:
从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。
请填空。
___D_____
#include
voidmain()
{floatx,amax,amin;
scanf("%f",&x);
amax=x;
amin=x;
while(________)
{if(x>amax)amax=x;
if(______)amin=x;
scanf("%f",&x);
}
printf("\namax=%f\namin=%f\n",amax,amin);
}
A)x<=0B)x>0C)x>0D)x>=0
x>aminx<=aminx>aminx108、阅读以下程序,程序运行后的输出结果是__B____.
#include
voidmain()
{intx;
for(x=5;x>0;x--)
if(x--<5)printf("%d,",x);
elseprintf("%d,",x++);}
A)4,3,2B)4,3,1,C)5,4,2D)5,3,1,
109、以下程序段的输出结果是____C____.
intk,n,m;
n=10;m=1;k=1;
while(k<=n){m*=2;k+=4;}
printf("%d\n",m);
A)4B)16C)8D)32
110、下面程序的输出结果是____B_____.
#include
voidmain()
{inty=9;
for(;y>0;y--)
{if(y%3==0)
{printf("%d",--y);
continue;}
}
}
A)741B)852C)963D)875421
111、下面程序的输出结果是____B____.
#include
voidmain()
{intx=3;
do{
printf("%d",x-=2);
}while(!
(--x));
}
A)1B)1-2C)30D)是死循环
112、定义如下变量:
intn=10;
则下列循环的输出结果是___B____.
while(n>7)
{n--;printf("%d\n",n);}
A)10B)9C)10D)9
9898
8787
76
113、语句while(!
e);中的条件!
e等价于____A____.
A)e==0B)e!
=1C)e!
=0D)~e
114、以下叙述正确的是_____B____.
A)continue语句的作用是结束整个循环的执行
B)只能在循环体内和switch语句体内使用break语句
C)在循环体内使用break语句或continue语句的作用相同
D)从多层循环嵌套中退出时,只能使用goto语句
115、在下列选项中,没有构成死循环的程序段是___D_.
A)inti=100;B)for(;;);
while
(1)
{i=i%100+1;
if(i>100)break;
}
C)intk=1000;D)ints=36;
do{++k;}while(k>=1000);while(s)--s;
116、下面程序的输出结果是____A_____.
#include
voidmain()
{inti;
for(i=1;i<=5;i++)
{if(i%2)printf("*");
elsecontinue;
printf("#");
}
printf("$\n");
}
A)*#*#*#$B)#*#*#*$C)#*#*$D)*#*#$
117、下面程序段中,循环体的执行次数是____C_____.
inta=10,b=0;
do{b+=2;a-=2+b;}while(a>=0);
A)4B)5C)3D)2
118、若i为整型变量,则以下循环语句的循环次数是_B_.
for(i=2;i==0;)
printf("%d",i--);
A)无限次B)0次C)1次D)2次
119、C语言中while和do-while循环的主要区别是.__A__
A)do-while的循环体至少无条件执行一次
B)while的循环控制条件比do-while的循环控制条件严格
C)do-while允许从外部转到循环体内
D)do-while的循环体不能是复合语句
120、对于for(表达式1;;表达式3)可理解为______B____.
A)for(表达式1;0;表达式3)
B)for(表达式1;1;表达式3)
C)for(表达式1;表达式1;表达式3)
D)for(表达式1;表达式3;表达式3)
121、合法的数组定义是___D_____.
A)inta[6]={"string"};B)inta[5]={0,1,2,3,4,5};
C)chara={"string"};D)chara[]={0,1,2,3,4,5};
122、要求下面的程序运行后,显示如下结果:
21046
1523
2478
5132
则程序中的划线处应填入___B_____.
#include
voidmain()
{inta[4][4]={________};
inti,j;
for(i=0;i<4;i++)
{for(j=0;j<4;j++)printf("%4d",a[i][j]);
printf("\n");}
}
A){1,5,2,3},{2,4,7,8},{5,1,3,2}
B){2,10,4,6},{1,5,2,3},{2,4,7,8},{5,1,3,2}
C){5,1,3,2},{2,4,7,8},{1,5,2,3}
D){2,1,2,5},{10,5,4,1},{4,2,7,3},{6,3,8,2}
123、给出以下定义:
charx[]="abcdefg";
chary[]={'a','b','c','d','e','f','g'};
则正确的叙述为___C_____.
A)数组x和数组y等价
B)数组x和数组y的长度相同
C)数组x的长度大于数组y的长度
D)数组x的长度小于数组y的长度
124、定义如下变量和数组:
inti;
intx[4][4]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};
则下面语句的输出结果是___C_____.
for(i=0;i<4;i++)printf("%3d",x[i][3-i]);
A)15913B)161116
C)471013D)481216
125、下面程序输出的结果是____D____.
#include
voidmain()
{inti,j,x=0;
staticinta[6]={1,2,3,4,5,6};
for(i=0,j=1;i<5;++i,j++)x+=a[i]*a[j];
printf("%d\n",x);
}
A)数组a中首尾的对应元素的乘积
B)数组a中首尾的对应元素的乘积之和
C)数组a中相邻各元素的乘积
D)数组a中相邻各元素的乘积之和
126、若希望下面的程序运行后输出45,程序空白处的正确选择是___C_____.
#include
voidmain()
{inti,j=10,a[]={1,3,5,7,9,11,13,15};
for(____________)
j+=a[i];
printf("%d\n