一直序列1,1,2,3,5,8;…….,求第20项的和,c语言程序代码
时间: 2024-09-11 07:10:55 浏览: 38
这是一个著名的数列,斐波那契数列(Fibonacci sequence),每一项都是前两项之和。在C语言中,我们可以编写一个简单的程序来计算第20项的和。由于递归会非常慢,特别是在计算大数值时,这里我们将使用循环来避免无限递归。
```c
#include <stdio.h>
// 定义斐波那契函数
long long fibonacci(int n) {
if (n <= 1) {
return n;
}
else {
long long fib_n_1 = 0, fib_n_2 = 1;
for (int i = 2; i <= n; ++i) {
long long temp = fib_n_1 + fib_n_2;
fib_n_1 = fib_n_2;
fib_n_2 = temp;
}
return fib_n_2;
}
}
int main() {
int num = 20; // 要求的项数
long long sum = 0;
// 计算前20项的和
for (int i = 1; i <= num; ++i) {
sum += fibonacci(i);
}
printf("第20项的和是:%lld\n", sum);
return 0;
}
```
这个程序首先定义了一个斐波那契函数,然后在主函数中通过循环从第一项开始加到第20项。运行这个程序后,它将输出第20项的和。