用C语言写输入一个小于等于30的正整数n,求1+1/2+1/3+...+1/n的和
时间: 2023-11-06 18:08:37 浏览: 133
以下是用C语言实现求1+1/2+1/3+...+1/n的和:
```c
#include <stdio.h>
int main() {
int n;
double sum = 0.0;
printf("请输入一个小于等于30的正整数n:");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
sum += 1.0 / i;
}
printf("1+1/2+1/3+...+1/%d的和为:%.2f", n, sum);
return 0;
}
```
运行程序后,输入一个小于等于30的正整数n,程序会计算并输出1+1/2+1/3+...+1/n的和。
相关问题
c语言写出输入一个小于等于30的正整数n,求1+1/2+1/3+...+1/n的和
好的,以下是用C语言编写的程序,可以实现输入一个小于等于30的正整数n,然后计算出1+1/2+1/3+...+1/n的和:
```c
#include <stdio.h>
int main() {
int n;
float sum = 0;
printf("请输入一个小于等于30的正整数n:");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
sum += 1.0 / i;
}
printf("1+1/2+1/3+...+1/n的和为:%f", sum);
return 0;
}
```
程序的运行结果如下:
```
请输入一个小于等于30的正整数n:10
1+1/2+1/3+...+1/n的和为:2.928968
```
希望这个程序能够帮到你,如果你还有其他问题,请随时提出。
c语言输入一个小于等于30的正整数n,求1+1/2+1/3+...+1/n的和
可以使用一个循环来累加每个分数的值,代码如下:
```c
#include <stdio.h>
int main() {
int n;
double sum = 0.0;
printf("请输入一个小于等于30的正整数n:");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
sum += 1.0 / i;
}
printf("1 + 1/2 + 1/3 + ... + 1/%d = %lf\n", n, sum);
return 0;
}
```
首先,我们定义了一个整数变量 `n` 和一个双精度浮点数变量 `sum`,分别用来存储用户输入的数字和累加结果。
然后,我们使用 `printf` 函数输出提示信息,使用 `scanf` 函数从用户输入中读取一个整数。
接下来,使用 `for` 循环从 1 到 `n` 遍历每个整数,累加对应的分数值到 `sum` 变量中。
最后,使用 `printf` 函数输出结果。
注意,在计算分数值时,需要将其中一个操作数转换为浮点数,以避免整数除法的问题。
阅读全文