永发信息网

新手学c语言帮忙查下错误。

答案:3  悬赏:40  手机版
解决时间 2021-05-15 11:53
  • 提问者网友:那叫心脏的地方装的都是你
  • 2021-05-14 14:40
#include<stdio.h>
void main()
{
float i,sum=0;
float a,s;
for(i=1;i<=10;i++)
{
sum=sum+i;
a=1/sum;
s=s+a;
}
printf("s=%f\n",s);
}
题目是:设n的值为10,
求s=1+1/(1+2)+1/(1+2+3)+……+1/(1+2+……+n)。
最佳答案
  • 五星知识达人网友:长青诗
  • 2021-05-14 16:19
void main()
{
float i,sum=0;
float a,s=0;
for(i=1;i<=10;i++)
{
sum=sum+i;
a=1/sum;
s=s+a;
}
printf("s=%f\n",s);
}
全部回答
  • 1楼网友:山君与见山
  • 2021-05-14 17:36

a=1/sum;

因为1和sum都是整形,所以其结果也是整形都为0

将1改为1.0试试

a=1.0/sum;

  • 2楼网友:英雄的欲望
  • 2021-05-14 16:34
#include<stdio.h> void main() { float i,sum=0; float a,s=0; //后面用到s累加. 所以要将s初始化为0 for(i=1;i<=10;i++) { sum=sum+i; a=1/sum; s=s+a; } printf("s=%f\n",s); }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯