问题 单项选择题

有如下程序:
main()
int k=4, n=0;
for(; n<k; )
n++;
if(n% 3!=0)continue;
k--;
printf(" % d, % d\n", k, n);
程序运行后的输出结果是______。

A.1, 1

B.2, 2

C.3, 3

D.4, 4

答案

参考答案:C

解析: continue语句是结束本次循环。
for循环语句的执行过程为:
第1次循环:循环前n=0,执行n++得n=1,n%3!=0成立,执行continue语句结束本次循环,k=4;
第2次循环:循环前n=1,执行n++得n=2,n%3!=0成立,执行continue语句结束本次循环,k=4;
第3次循环;循环前n=2,执行n++得n=3,n%3!=0不成立,执行语句k--得k=3;n<k不成立,结束整个for循环。
所以执行完for循环后k=3、n=3,正确答案为选项C。

多项选择题
单项选择题