有以下程序 #include main() { int i=5; do { if (i%3==1) if (i%5==2) { printf("*%d", i); break; } i++; } while(i!=0); printf("

admin2019-12-17  34

问题 有以下程序
#include
main()
{  int   i=5;
do
{  if (i%3==1)
if (i%5==2)
{  printf("*%d", i);  break;  }
i++;
}  while(i!=0);
printf("\n");
}
程序的运行结果是

选项 A、*2*6
B、*3*5
C、*5
D、*7

答案D

解析 do...while语句是先执行后判断,所以第一次先执行循环体,判断i%3= =1的条件,由于i为5所以余数为2,条件不成立,执行i++,i的值为6,判断while条件为真,第二次执行循环体,同第一次循环体的执行过程一样,i的值变为7,判断while条件为真,第三次执行循环体,此时i%3= =1条件成立,判断i%5==2也成立,打印*与i的值,即*7,然后执行break语句,跳出循环。所以选择D选项。
转载请注明原文地址:https://kaotiyun.com/show/Z7Rp777K
0

最新回复(0)