问题
单项选择题
有以下程序: main() { int k=4,n=0;for(;n<k;){ n++; if(n%!=0)continue; k--; }printf("%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符合题意。