m0_62417526 2021-10-01 19:50 采纳率: 100%
浏览 74
已结题

求解,为什么这样求调和级数不行?同学说应该是sum=sum+1.0/i,为什么?

#include<stdio.h>

int main()
{
int m; int i=1; float sum = 0;

scanf_s("%d", &m);
while (i <= m)
{
    sum = sum + 1/i;
    i=i+1;
}
printf("%.2f", sum);
    return 0;

}

  • 写回答

1条回答 默认 最新

  • 出云coding 2021-10-01 19:55
    关注

    i是整数类型,1是整数类型,1/i也是整数类型
    假设i=10,则1/10=0
    国庆 的你依然在学习,牛的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月9日
  • 已采纳回答 10月1日
  • 创建了问题 10月1日