此处以前三项为 1,2,3为例
//数组求法
#include<stdio.h>
int main(){
int arr[21], i;
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
for(i = 3; i < 20; ++i)
arr[i] = arr[i - 1] + arr[i - 2] + arr[i - 3];
for(i = 19; i>= 0; i--){
printf("%6d ", arr[i]);
if(i%5==0) printf("\n");
}
return 0;
}
//递归
#include<stdio.h>
int cal(int n){
if(n == 0) return 1;
if(n == 1) return 2;
if(n == 2) return 3;
return cal(n-1) + cal(n-2) +cal(n-3) ;
}
int main(){
for(int i = 19; i>= 0; i--){
printf("%6d ", cal(i));
if(i%5==0) printf("\n");
}
return 0;
}