问题
单项选择题
有如下程序: 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。