从1加1/2加1/3累加到N分之一用C语言实现
时间: 2024-10-22 22:11:28 浏览: 51
C语言练习题:求1到10的阶乘之和简单实例
5星 · 资源好评率100%
在C语言中,要实现从1加到1/n的系列,我们可以采用动态调整精度的方式,因为涉及到小数运算,需要使用浮点数。下面是一个简单的函数,它接受一个整数n作为输入,计算并返回对应的部分和:
```c
#include <stdio.h>
#include <math.h>
double partial_sum(int n) {
double sum = 0.0;
for (double i = 1.0; i >= 1 / n; i -= 1 / n) {
sum += 1 / i;
}
return sum;
}
int main() {
int n;
printf("请输入一个正整数n:");
scanf("%d", &n);
if (n > 0) {
double result = partial_sum(n);
printf("从1到1/%d的和为:%.10f\n", n, result); // 输出结果,保留10位小数
} else {
printf("输入错误,n应为正整数。\n");
}
return 0;
}
```
这个程序首先定义了一个`partial_sum`函数,通过迭代从1减去1/n的倒数,逐步增加到1。在主函数中,用户输入n,检查是否为正整数,然后调用`partial_sum`函数。
阅读全文