c语言分数求和怎么整

C语言分数求和1+1/2+1/3+1/4+...+1/n,不知道怎么去定义这个分数,分不清楚这个变量

img

你这问题多了
1.i和n应该是int型
2.不要在循环体里修改i的值,换个变量来做这件事
3.1/n改为1.0/n
4.如果题目对精度有要求,那么sum的类型应该改为double

float i修改为int i
i<=1/n修改为i<=n
下面i=1/n删除
sum=sum+1/(float)n;

line 7:n的类型是int,占位符用%d
line 8:从这个表述来看,根本进不了循环,另外++的项也有问题,应该是i
line 9/10:循环体有问题……

#include <stdio.h>
int main() {
    int n;
    float i;
    float sum = 0;
    printf("请输入整数\n");
    scanf("%d", &n);
    for(i = 1; i <= n; i++) {
        sum += 1 / i;
    }
    printf("sum = %f", sum);
    return 0;
}

修改如下,供参考:

#include <stdio.h>
int main() {
    int n, i;               //修改
    double sum = 0;         //修改
    printf("请输入整数\n");
    scanf("%d", &n);
    for (i = 1; i <= n; i++) {
        sum += 1.0 / i;     //修改 
    }
    printf("sum = %f", sum);
    return 0;
}

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^