流心
发布于 2024-06-07 / 0 阅读
0

前 n 项的求和

/*
    前 n 项的和
    f = 1 + 1/2 + 1/3 + .....
*/
#include<stdio.h>
int main()
{
    int n ;
    int i ;
    double sum = 0.0;
    scanf_s("%d", &n);

    for (i = 1; i <= n; i++)
    {
       sum += 1.0/i;
    }
    printf("f(%d)=%f\n",n ,sum);
    return 0;
    
}

代码功能

  1. 输入 n:程序从标准输入中读取一个整数 n,表示要计算的项数。

  2. 计算和:通过一个循环,程序计算从 1 到 n 的倒数的总和。公式为: f(n)=1+12+13+…+1nf(n) = 1 + \frac{1}{2} + \frac{1}{3} + \ldots + \frac{1}{n}f(n)=1+21​+31​+…+n1​

  3. 输出结果:最后,程序打印出计算结果。

算法分析

  • 时间复杂度:该算法的时间复杂度为 O(n),因为它需要执行 n 次迭代。

  • 空间复杂度:该算法的空间复杂度为 O(1),因为它只使用了有限的额外空间(即 sumi)。