大学生c语言任务如图

为什么最后的结果是25而不是0呢

img


非常感谢!

为啥你觉得是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);
}