问题 单项选择题

有以下程序: main() { char k; int i; for(i=1;i<3;i++) { scanf("%c",&k); switch(k) { case '0': printf("another\n"); case '1': printf("number\n"); } } } 程序运行时,从键盘输入01<回车>,程序执行后的输出结果是( )。

A.another number

B.another number another

C.another number number

D.number number

答案

参考答案:C

解析: 本题在for循环中嵌套了switch语句,每循环一次通过scanf()函数从键盘上输入一个k值,然后执行switch语句。for循环共循环了两次,当i=1时,从键盘上读入'0',使得k的值为'0',执行switch语句中case'0':后面的语句,输出"another",接着执行case'0':下面的语句输出"number",退出switch语句,当i=2时,从键盘上读入'1',使得k的值为'1',执行switch语句中case'1'后面的语句,输出"number",退出switch语句。当i=3时退出循环。故最后的输出为"another"、"number"和"number",所以,4个选项中选项C符合题意。

单项选择题
判断题