有以下程序 #include <stdio.h> main() { int i=5; do { if (i%3==1) if (i%5==2) {

admin2021-02-25  15

问题 有以下程序
    #include <stdio.h>
    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://jikaoti.com/ti/f5z0FFFM
0

随机试题
最新回复(0)