.c语言编程有一分数序列:2/1,-3/2,5/3,-8/5,13/8,-21/13,…, 由用户输入项目数N,求这个数列的前N 项之和
时间: 2023-10-31 18:06:40 浏览: 79
C语言程序设计-求一分数序列21,32,53,85,138,2113…的前n项之和;说明:每一分数的分母是前两项的分母之
5星 · 资源好评率100%
好的,我明白了。下面是解决这个问题的代码:
```c
#include <stdio.h>
int main()
{
int n, i;
double a = 2, b = 1, sum = 0, temp;
printf("请输入项数N:");
scanf("%d", &n);
for (i = 1; i <= n; i++)
{
sum += a / b;
temp = a;
a = -a + b;
b = temp;
}
printf("前%d项之和为%f\n", n, sum);
return 0;
}
```
解释一下代码:
首先,我们定义变量n表示要求的项数,变量i表示循环计数器,变量a和b分别表示数列的分子和分母,变量sum表示数列的前n项之和,变量temp用于交换a和b的值。
然后,我们通过scanf函数让用户输入项数n,然后使用for循环计算数列的前n项之和。循环中,首先将a/b加到sum中,然后用temp保存当前a的值,更新a和b的值,使它们分别等于-b和temp,以便计算下一项。最后,在循环结束后,使用printf函数输出结果。
希望能对你有所帮助!
阅读全文