A-A+
有以下程序 main() {int i j x=0; for(i=0;i<2;i++) {x
问题详情
有以下程序 main() {int i,j,x=0; for(i=0;i<2;i++) {x++; for(j=0;j<=3;j++) {if(j%2) continue; x++; } x++; } printf("x=%dn",x); 程序执行后的输出结果是______。
A.x=4
B.x=8
C.x=6
D.x=12请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:B
解析:此题考核的是循环嵌套和continue语句的应用。continue语句的作用是用于结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下—次是否执行循环的判定。当外层循环for(i=0;i<2;i++)满足条件的的情况下执行循环体,循环体中包含了嵌套的内层循环for(j=0;j<=3,j++){……},在内层循环中,当if条件语句不成立时执行continue语句,其作用是跳过“x++:”,继续执行内层循环的for语句,直到内层循环条件不满足,则执行跳出内层循环,执行外层环的“x++;”语句,然后再对i进行判断,直到外层循环条件不满足,跳出外层循环,执行输出语句,结果为8。