又有一道C语言不会做

来源:百度知道 编辑:UC知道 时间:2024/06/30 08:57:46
main()
{ int i=0 ,s =0 ;
do
s+=i++;
while(i++<6);
printf("s=%d",s);
}
最好给一下过程 我算完以后和作案不一样

如果不知道++i和i++的区别,那么不用看下去了,去看些相关的内容。
计算完s=s+i后,i才会自加1.

第一次:因为i=0,s=0,到while,i=1,while判断结束后,i=2;
第二次:因为i=2,s=2,到while,i=3,while判断结束后,i=4;
第三次:因为i=4,s=2+4=6,到while,i=5,while判断结束后,i=6;
第四次:因为i=6,s=6+6=12,到while,i=6,程序结束。

12 循环了六次 每次i加了2

第一次:do:s=0,i=1;while true,i=2
第二次:do:s=2,i=3;while true,i=4
第三次:do:s=6,i=5;while true,i=6
第四次:do:s=12,i=7;while false
s=12

s=0;i=1
i=2

s=2;i=3;
i=4

s=6;i=5
i=6

s=12

这是一个直到型循环。

第一趟:s+=i++ s为0,之后i为1,while(i++<6)后,i为2
第二趟: s为2,之后i为3, i为4
第三趟: s为6,之后i为5, 6
第四趟: s为12,之后i为,条件不成立,跳出。

回答的人这么多我就不说了,嘿嘿