问题 单项选择题

有以下程序:
#include <stdio.h>
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语句嵌套使用。switch语句的执行过程是:在switch后面的表达式的值和case后面常量表达式的值吻合时,就执行后面的语句。如果在该语句的后面没有break语句,则继续执行下一个case,直到遇到break语句或switch多分支的结束,在switch语句中,break语句的作用是使流程跳出switch结构,终止switch语句的执行。本题中在for循环中嵌套了switch语句,每循环一次通过scanf()函数从键盘上输入一个k值,然后执行switch语句。

选择题
判断题