问题
单项选择题
有以下程序:
main()
int k=4,n=0;
for(; n<k;)
n++;
if(n%3!=O) continue;
k--;
printf("%d,%d\n",k,n);
程序运行后的输出结果是( )。
A.1,1
B.2,2
C.3,3
D.4,4
答案
参考答案:C
解析: 在本程序的for循环中,用到了一个continue语句,continue语句的作用是停止本次循环,不执行循环体内continue语句后面的其他语句,继续下次循环的条件判断。首先在for循环中n自加1(值变为1),然后执行后面的if语句,由于if语句后面括号的表达式1%3!=0的值为真,程序执行continue语句,回到for循环的开始部分,并且判断for循环中的条件表达式(n<k)为真,重复执行“n++;”语句,如此循环直到n=3时,if语句判定条件中表达式3%3!=0的值为假,程序执行if语句后面的“k--;”语句,此时k的值为3,不满足n<k,退出for循环。故最后的k和n的值为3和3,选项C符合题意。