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

admin2011-06-13  20

问题 有以下程序:    #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循环条件为假,循环结束。
转载请注明原文地址:https://kaotiyun.com/show/hjPp777K
0

最新回复(0)