为什么最后的结果是25而不是0呢
为啥你觉得是0呢?好奇怪啊,你怎么想的?
这就是一个1到10的奇数和啊。
偶数会被淘汰掉,因为 i/2是整除,如果i为偶数,i==(i/2)*2成立;i为奇数时,这个if条件是不成立的,所以会执行sum = sum+i;
比如i=3,i/2=1,而不是1.5,所以 3 == 1 * 2是不成立的
continue是跳出本次循环而不是结束循环
void main()
{
int i=0,sum=0;
do
{
if(i==(i/2)*2) //这个判断就是当i为偶数的时候
continue; //结束本次循环,
sum=sum+i;
printf("sum=%di=%d\n",sum,i);
}while(++i<10);
printf("sum=%d\n",sum);
}