C语言for循环 计算一下分数序列的前n项之和2/1+3/2+5/3+8/5+13/8+21/13等等
时间: 2023-11-05 21:31:57 浏览: 409
#include <stdio.h>
int main() {
int n;
double sum = 0; // 使用double类型存储分数之和
double a = 2, b = 1; // 存储分数的分子和分母
printf("请输入项数n:");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
sum += a / b; // 将当前分数加入总和
double temp = a; // 交换a和b的值,计算下一项分数
a = a + b;
b = temp;
}
printf("前%d项分数之和为:%lf", n, sum);
return 0;
}
相关问题
用c语言编写程序输入一个正整数n,求以下分数序列的前n项之和2/1+3/2+5/3+8/5+13/8+
以下是使用循环计算的程序:
```c
#include <stdio.h>
int main() {
int n;
printf("请输入一个正整数n:");
scanf("%d", &n);
double a = 2.0, b = 1.0, sum = 0.0;
for (int i = 1; i <= n; i++) {
sum += a / b;
double temp = a;
a = a + b;
b = temp;
}
printf("前%d项之和为%.2f\n", n, sum);
return 0;
}
```
这里使用了两个变量`a`和`b`分别表示分数序列中的分子和分母。在循环中,先将当前项的分数加入到总和`sum`中,然后将分子和分母分别更新为下一项的分子和分母。具体来说,分子变为上一项的分子加上上一项的分母,分母变为上一项的分子。最终计算出前n项之和并输出。
C语言:求下列分数序列的前20项之和:2/1+3/2+5/3+8/5+13/8+…
这个序列可以看出是斐波那契数列的一种变形形式,可以用循环来计算前20项的和。
以下是C语言代码实现:
```c
#include <stdio.h>
int main() {
double sum = 0.0;
double x = 2.0;
double y = 1.0;
double z;
int i;
for (i = 1; i <= 20; i++) {
sum += x / y;
z = x + y;
y = x;
x = z;
}
printf("前20项之和为:%f", sum);
return 0;
}
```
输出结果为:
```
前20项之和为:32.660260
```
阅读全文