行将朽木 发表于 2020-4-12 13:59:25

递归和非递归之间如何转换啊

编写函数(非递归),求如下级数,在主函数中输入n,并输出结果。A=1+1/(1+2)+1/(1+2+3)+1/(1+2+3+4)+……+1/(1+2+3+……+n)

永恒的蓝色梦想 发表于 2020-4-12 14:07:17

本帖最后由 永恒的蓝色梦想 于 2020-4-12 14:45 编辑

试一下#include<stdio.h>

double A(int n){
    int add=1;
    int denominator=0;
    double res=0.0;

    while(add<=n)res+=1.0/(denominator+=add++);

    return res;
}

int main(){
    int n;
    scanf("%d",&n);
    printf("%lf",A(n));
    return 0;
}
页: [1]
查看完整版本: 递归和非递归之间如何转换啊