C语言用for循环求分数序列:2/1,3/2,5/3,8/5,13/8,21/13,…,前n项之和。
时间: 2023-12-13 17:14:11 浏览: 74
C语言程序设计-求一分数序列21,32,53,85,138,2113…的前n项之和;说明:每一分数的分母是前两项的分母之
5星 · 资源好评率100%
可以使用两个变量a和b来表示分数序列中的分子和分母,初始值分别为2和1。接着,使用for循环从i=1开始遍历到n,每次迭代更新a和b的值,计算出当前项的分数值并累加到总和中。具体实现如下:
```c
#include <stdio.h>
int main() {
int n;
printf("请输入项数n:");
scanf("%d", &n);
int a = 2, b = 1; // 分数序列的初始值
double sum = 0; // 分数序列前n项之和
for (int i = 1; i <= n; i++) {
double fraction = (double) a / b; // 当前项的分数值
sum += fraction; // 累加到总和中
int next_a = a + b;
b = a;
a = next_a;
}
printf("分数序列前%d项之和为%.2f\n", n, sum);
return 0;
}
```
例如,输入n=6,输出结果为:
```
请输入项数n:6
分数序列前6项之和为7.36
```
阅读全文