下面程序的运行结果是_______?为什么?

#include<iostream.h>
void main()
{
int i=0;
while(++i)
{
if(i==10) break;
if(i%3!=1) continue;
cout<< i;
}
}

第1个回答  2012-06-04
运行结果:147
#include<iostream.h>
void main()
{
int i=0;
while(++i) //当i=i+1不等于0时,执行循环
{
if(i==10) break; //当i等于10时,结束循环
if(i%3!=1) continue; //当i除于3的余数不等于1时,结束循环
cout<< i; //即当i除于3的余数等于1时,输出i的值(当i=1,4,7时满足条件,输出,当i大于10时结束)
}
}
第2个回答  2012-06-04
1 4 7

++i ,先进行加1操作,然后再判断i是否符合要求
第3个回答  2012-06-04
1 4 7追问

怎么算的啊

追答

++i也就是说先加后判断,所以while条件一直成立,且每次执行while判断。i都加1
第一次进while,i=1,所以两个if都不成立,执行输出 1
第二、三次,第一个if不成立,第二个if,i除以3余数不为1,故执行continue,进入下一次循环
第四次,同第一次,输出 4
第五、六次,同第二次,直接进入下一次循环
第七次,同第一次,输出 7
第八、九次,同第二次,直接进入下一次循环
第十次,i=10,故第一个if条件成立,执行break,跳出循环,程序结束

本回答被提问者采纳
相似回答