c语言模拟题答案及解析,全国计算机等考二级C语言模拟试题,答案及解析一
該樓層疑似違規已被系統折疊?隱藏此樓查看此樓
(18)下列程序的輸出結果是_________。
Main()
{?? int i;
for(i=1;i+l;i++)
{?? if(i>4){printlf("%d",i++);break;}
}
printf("%d",i++);
}
A)55???????????????????? B)56
c)程序錯誤,沒有輸出???? D)循環條件永遠為真,死循環
答案:B
評析:本程序中有個for循環,但注意到for循環的條件是"i+l",也就是只要i+l的值為真(非零值均為真),就執行循環。當i=l的時,i+l的值為真,判斷if條件不成立,執行i++,輸出i的值為5。
(19)下列程序的輸出結果是_________。
#define A 100
main()
{?? int i=O,sum=O;
do{?? if(I==(i/2)*2)continue;
sum+=i;
}while(++i
printf("%d\n",sum);
}
A)2500???? B)2050???? C)4???? D)O
答案:A
評析:本題程序的功能是求1到_99之問(包括1和99)所有奇數之和。程序中的while循環的終止條件為++i=100,在while循環體內,如果i是偶數,則執行continue,跳過這一次循環,執行下一次循環,否則求和。最后輸出的值是1到99之間(包括l和99)所有奇數之和(1+99)*50/2=2500。
(20)下列程序的輸出結果是_________。
main()
{?? int I=3;
switch(i)
{ case 1:
case 2:printf("%d",i);
case 3:
case 4:break;
default:printf("OK");
}
}
A)0???? B)3???? C)OK???? D)沒有任何輸出
答案:D
評析:在題中,i的值為3,由于"case 3:"后面沒有break語句,所以繼續向下執行"case 4:"后面的語句,由于"case 4:"后面的語句為break強行退出switch語句,所以,本題沒有任何輸出。
(21)下列程序執行后的輸出結果是________。
main()
{?? int m[][3]={1,4,7,2,5,8,3,6,9};
int i,k=2:
for(I=0;i<3;i++)
{printf("%d",m[k][i]);}
總結
以上是生活随笔為你收集整理的c语言模拟题答案及解析,全国计算机等考二级C语言模拟试题,答案及解析一的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 属性 方法c语言,C语言如何实现C++中
- 下一篇: android url回调json,【求