问题 单项选择题

有以下程序: #include<stdio.h> main() { int x=8; for(;x>0;x--) { if(x%3) {printf("%d,",x--);continue;} printf("%d,",--x); } } 程序的运行结果是______。

A.7,4,2

B.8,7,5,2

C.9,7,6,4

D.8,5,4,2

答案

参考答案:D

解析: 本题考查for循环语句。x=8,for循环条件为真,8%3=2,不等于0,则if条件表达式为真,执行第一个输出语句,先输出x的值8,然后将x的值减1,此时x=7。然后执行continue语句结束本次循环。执行x--表示式,得x=6,for循环条件为真.6%3=0,则if条件表达式为假,执行第二个输出语句,先将x的值减1得x=5,然后输出x的值5。执行x--表示式,得x=4,for循环条件为真,4%3=1,不等于0,则if条件表达式为真,执行第一个输出语句,先输出x的值4,然后将x的值减1,此时x=3。然后执行continue语句结束本次循环。执行x--表示式,得x=2,for循环条件为真,2%3=2,不等于0,则if条件表达式为真,执行第一个输出语句,先输出x的值2,然后将x的值减1,此时x=1。执行x--表示式,得x=0,for循环条件为假,循环结束。

问答题 论述题
问答题 案例分析题