c++实现:输入一个正整数n,计算1+1/(1+2)+1/(1+2+3)+·· · ·+1/(1+2+3+··· · ·+n)的值(2 < n < 1000, 结果保留两位小数)。
时间: 2023-05-26 12:07:16 浏览: 68
c语言求1+2+...+n的解决方法
#include<stdio.h>
int main(){
int n,i,j,k; //i表示要求的这个数列的分母,j就是分子,k表示分母每个位置上的值
double sum=0; //sum表示结果
scanf("%d",&n);
for(i=1;i<=n;i++){
k=1; //初始化,每行都从1开始,当然如果单独算1/1也是1
for(j=1;j<=i;j++){
k*=j;
}
sum+=(double)1/k; //一次循环就是一项,直接累加
}
printf("%.2lf",sum); //保留两位小数
return 0;
}
阅读全文