我们先看什么是斐波那契数:
斐波那契数列指的是这样一个数列:1,1,2,3,5,8,13,21,34,55,89...
我们通过观察可以得出斐波那契数列的特点:
1.第一项和第二项都是1。
2.这个数列从第3项开始,每一项都等于前两项之和。
思路分析
1,我们可以定义一个一维数组用来存放斐波那契数的前20项,第1项和第2项初始化为1。
代码如下
#define N 20
void main(){
int arr[N]={1,1};//定义一个一维数组,并且数组第1项和第2项赋值为1
int i;//定义数组数字下角标为i
2,斐波那契数从第3项开始,每一项都等于前两项之和,数组第3项数字的下角标为arr[2]。
代码如下
for(i=2;i<N;i++){
arr[i]=arr[i-1]+arr[i-2];
}
3,用for循环遍历数组每个值然后打印输出斐波那契数的前20项数
代码如下
for(i=0;i<N;i++){
printf("%d\t",arr[i]);
}
全部代码如下
#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]);
}//循环遍历一维数组的所有值并打印输出
}
代码运行结果如下