问答详情
源自:4-10 循环结构之三种循环比较

为什么这样输出不了,只用while输出为什么为0

https://img4.mukewang.com/5c4d214c0001c9d807640626.jpg小白求大佬解释下

提问者:慕仙4122384 2019-01-27 11:12

个回答

  • 慕婉清9027637
    2019-01-27 16:46:34

    题目提供的是初始 i =1,在while中再次i++就是2了,所以你的代码后面就全乱了

    #include<stdio.h>

    int main()

    {

    int sum=0;

    int flag=1;

    int i=1;

    while(i<=100)

    {

    sum=sum+flag*i;

    flag*=-1;

    i++;

    }

    printf("sum=%d",sum);

    }

  • qq_慕九州7398983
    2019-01-27 16:31:58

    do和for前边把sum和flag重置一下,每个循环后边都printf一下,

    最后一个循环“sum==”是什么鬼,=是赋值,==是比较,你这个sum==sum+i*flag为假也就是0,最后输出肯定也就是0了