c语言用数组来求裴波那契数列问题前20项
时间: 2023-08-01 12:13:21 浏览: 126
好的,这个问题很简单,以下是用C语言求解裴波那契数列前20项的代码:
```c
#include <stdio.h>
int main()
{
int i;
long long fib[20]; // 使用 long long 类型防止溢出
fib[0] = 0;
fib[1] = 1;
for(i = 2; i < 20; i++)
{
fib[i] = fib[i-1] + fib[i-2];
}
for(i = 0; i < 20; i++)
{
printf("%lld ", fib[i]);
}
return 0;
}
```
上述代码中,我们先定义了一个长为20的数组 `fib`,并将前两个元素赋值为0和1。然后使用循环将剩下的元素逐一计算出来。最后再使用循环输出数组中的所有元素即可。
相关问题
c语言用数组来求斐波那契数列问题前20项
以下是两种C语言用数组来求斐波那契数列问题前20项的例子:
1.全部代码如下:
```c
#include <stdio.h>
#define N 20 //宏定义N的值为20,即打印输出斐波那契数的前20项数
void main(){
int arr[N]={1,1};//定义一个一维数组,并且数组第1项和第2项赋值为1
int i;
for(i=2;i<N;i++){
arr[i]=arr[i-1]+arr[i-2];//给数组第3项以及第3项以后的项赋值
}
for(i=0;i<N;i++){
printf("%d\t",arr[i]);//循环遍历一维数组的所有值并打印输出
}
}
```
2.代码如下:
```c
#define N 20
void main(){
int arr[N]={1,1};//定义一个一维数组,并且数组第1项和第2项赋值为1
int i;//定义数组数字下角标为i
for(i=2;i<N;i++){
arr[i]=arr[i-1]+arr[i-2];//给数组第3项以及第3项以后的项赋值
}
for(i=0;i<N;i++){
printf("%d\t",arr[i]);//循环遍历一维数组的所有值并打印输出
}
}
```
c语言 用数组来求斐波那契数列问题前20项
以下是两种C语言用数组来求斐波那契数列前20项的方法:
方法一:
```c
#include "stdio.h"
int main(){
int i,j;
int f[20] = {1,1};//赋值数列前两项
for(i = 2;i < 20; i++){
f[i] = f[i-1] + f[i-2]; //根据数列的定义,进行计算(N项的结果等于 (n-1)+(n-2))
}
for(j = 0 ; j < 20;j++){
//********5个一行**************//
if(j % 5 == 0) printf("\n");
printf("%d\t",f[j]);
}
return 0;
}
```
方法二:
```c
#include<stdio.h>
int main(){
int f[20] = {1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; //等同于{1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
for ( int i = 2; i < 20; i++ ) //计算f[2]-f[19]的值
f [ i ] = f [ i - 2 ] + f [ i - 1 ];
for ( int i = 0; i < 20; i++ ) {
//控制每行输出4个数后换行
if ( i%4==0 ) {
printf( "\n" );
}
printf( "%12d", f [ i ] );
}
printf( "\n" );
return 0;
}
```