本题要求编写程序,计算序列 1 + 1/2 + 1/3 + ... 的前N项之和。

输入格式:
输入在一行中给出一个正整数N。

输出格式:
在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后6位。题目保证计算结果不超过双精度范围。

输入样例:

6

输出样例:

sum = 2.450000
#include <stdio.h>
double sum(int);
int main(int argc, const char *argv[])
{
    int n;
    double s;
    scanf("%d",&n);
    s = sum(n);
    printf("sum = %.6f\n",s);
    return 0;
}
double sum(int n)
{
    if(1 == n)
        return 1.0;
    else
        return 1.0/n+sum(n-1);
}
Last modification:2021 年 03 月 26 日 22 : 24 : 02