问答详情
源自:4-6 循环结构之while循环

while中的一些问题

#include <stdio.h>
int main()
{
    int i,sum=0;
    i=1;
    while( i<=100  )  //循环条件应该是什么呢?
    {
        sum=sum+i;
        i++;          //这里是不是应该改变循环变量的值
    }
    printf("100以内所有整数之和为:%d\n", sum);
    return 0;
}

中将“i++”改成“i=i++”为什么不行呢?

提问者:qq_残伤_03710029 2016-12-18 21:05

个回答

  • 渣渣学生
    2016-12-18 21:40:06
    已采纳

    i++是先取值在进行加1的运算,直接i++就是只进行加1的运算,但是i=i++就相当于先取值再进行加1。这样的话,循环体内的i的值不会变,一直都是1。

    (希望可以帮到你,我也刚学没多久,我认为就是这样的,有哪里错了请大神指点下)