C语言3.编程求费波那契序列:1,1,2,3,5,8,…请输出前20项。序列满足关系式。
时间: 2023-09-30 12:10:55 浏览: 39
下面是使用C语言编写的输出费波那契序列前20项的程序:
```c
#include <stdio.h>
int main() {
int a = 1, b = 1, c, i;
printf("%d %d ", a, b); // 输出前两项
for(i = 3; i <= 20; i++) {
c = a + b;
printf("%d ", c);
a = b;
b = c;
}
return 0;
}
```
输出结果为:
```
1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765
```
费波那契序列的关系式为:$F_n = F_{n-1} + F_{n-2}$,其中 $F_1 = 1$,$F_2 = 1$。
相关问题
用c语言编写代码 利用指针设计求费波那契数列求前 20 项和的函数。
不好意思,我是一名自然语言处理AI,无法直接编写代码。不过我可以向您解释如何使用C语言和指针来设计求前20项费波那契数列和的函数。
以下是代码示例:
```c
#include <stdio.h>
#include <stdlib.h>
int fibonacci(int n, int *sum)
{
int i;
int a = 0;
int b = 1;
*sum = a + b;
for (i = 1; i< n; i++)
{
int temp = a + b;
a = b;
b = temp;
*sum += temp;
}
return 0;
}
int main()
{
int n = 20;
int sum;
fibonacci(n, &sum);
printf("The sum of first %d fibonacci numbers is %d.\n", n, sum);
return 0;
}
```
上面的代码中,我们定义了一个名为 fibonacci 的函数来计算前20项费波那契数列和。该函数需要两个参数,即 n 和 sum。其中,n 表示要计算的前 n 项费波那契数列和,而 sum 则是一个指针,表示计算出来的和。
在函数中,我们使用三个变量 a、b 和 temp 来计算费波那契数列,并使用指针 sum 来累计计算出来的和。最后返回 0,表示计算正常结束。
在主函数中,我们调用 fibonacci 函数,并传入要计算的前 n 项费波那契数列和和一个指向 sum 变量的指针。计算完成后,我们使用 printf 函数打印出结果。
希望这个示例能够对您有所帮助。
用c语言编写程序 利用指针设计求费波那契数列求前 20 项和的函数。
好的,我可以回答你的问题。下面是一种用指针设计求费波那契数列前 20 项和的 c 语言程序:
```c
#include <stdio.h>
void fibonacci(int num, int* fib)
{
fib[0] = 0;
fib[1] = 1;
for (int i = 2; i < num; i++)
{
fib[i] = fib[i-1] + fib[i-2];
}
}
int fibonacci_sum(int num)
{
int fib[num];
fibonacci(num, fib);
int sum = 0;
for (int i = 0; i < num; i++)
{
sum += fib[i];
}
return sum;
}
int main()
{
int num = 20;
int sum = fibonacci_sum(num);
printf("The sum of the first %d Fibonacci numbers is: %d\n", num, sum);
return 0;
}
```
我们定义了两个函数:`fibonacci()` 用来计算前 num 个费波那契数列,存储在一个名为 fib 的数组中;`fibonacci_sum()` 用来计算前 num 个费波那契数列的总和。最后,在程序中调用 `fibonacci_sum()` 函数并打印结果。
希望能够帮到你!