#include<stdio.h>
int main()
{
int n,i;
float sum;
scanf("%d",&n);
for(sum=0,i=0;i<=n;i++)
sum+=1/(i*(i+1));
printf("%.2f",sum);
return 0;
}
已经改好了
#include<stdio.h>
int main()
{
int n,i;
float sum;
scanf("%d",&n);
for(sum=0,i=1;i<=n;i++) //看题目,n从1开始
sum+=1.0/(i*(i+1)); //浮点数
printf("%.2f",sum);
return 0;
}
第九行改成
sum+=1.0/(i*(i+1));
i = 0时,分母为0,直接报错退出了吧
sum+=1/(i*(i+1));
第一次循环(i*(i+1))的值是0,不能把0作为除数,会报错