循环体里语句顺序对结果的影响,求教
最近在家准备2级考试,在写循环的时候出现一个疑问比如
当我写出这个代码,求从1 到4 的阶乘相加
#include<stdio.h>
void main()
{
int sum=1;
int i;
int t=1;
for(i=2;i<5;i++)
{
t=t*i;
sum=sum+t;
}
printf("%d\n",sum);
}
当我调换for语句里面顺序的时候结果就变了,A告诉我如果调换的话,最后一次的t没有加进去
如果是这样的话 那这个求1+1/2+1/3+....1/100的代码只加到了1/99??吗
#include<stdio.h>
void main()
{
int i;
float sum=0,t=1,k=1;
for(i=0;i<100;i++)
{
sum=sum+t;
k=k+1;
t=1/k;
}
printf("%f\n",sum);
}