C程序结果错误

来源:百度知道 编辑:UC知道 时间:2024/07/08 10:13:54
#include<stdio.h>
main()
{
int sum=0,i=1,s=1;
for(i=1;i<=4;i++)
{
s=s*i;
sum=sum+s;
i++;
}
printf("%d\n",sum);
}
无错误,但结果是4,结果是错误的。为什么会出现这个问题?详细说下!

这里我分析下,结果是正确的
第一次循环s=1,i=1,sun=1,然后i++ i=2,再是i++;i=3
s=1*3=3, sum=4 然后i++ 再是i++ i=5跳出循环
sum=4
楼主是不是多写了个i++呢?

lz期望的输出结果是多少呢
按照此代码,的确是输出 4
第一次循环i=1,s=1,sum=1;
第二次循环i=3,s=3,sum=4;
第三次i=5,不进入循环。
结果是sum=4。

你用什么运行的,
用Vc++试试,

i一次循环加了2次

x