计算机二级题目......

来源:百度知道 编辑:UC知道 时间:2024/06/04 03:29:50
main()

{int k=5,n=0;

do

{switch(k)

{case1: case3:n+=1; break;

default;n=0;k--;

case2: case4:n+=2;k--;break;

}

printf(“%d”,n);

}while(k>0&&n<5);

}

程序运行后的输出结果是
A)235
B)0235
C)02356
D)2356

知道答案的,麻烦解释、说明下~~~

k=5,所以执行default得到:n=0,k=k-1=4;
因为没有break,继续执行case 4得到:n=n+2=2,k=k-1=3;
输出n的值2

符合k>0和n<5,继续执行

k=3,所以执行case 3得到:n=n+1=3,k=k-1=2;break
输出n的值3

符合k>0和n<5,继续执行

k=2,所以执行case 2得到:n=n+2=5,k=k-1=1;break
符合k>0和n<5,所以输出n的值5

不符合k>0和n<5,所以跳出循环

答案是A

B