九度OJ 1075:斐波那契数列 (数字特性)
- 题目描述:
-
编写一个求斐波那契数列的递归函数,输入n值,使用该递归函数,输出如样例输出的斐波那契数列。
- 输入:
-
一个整型数n
- 输出:
-
题目可能有多组不同的测试数据,对于每组输入数据,
按题目的要求输出相应的斐波那契图形。
- 样例输入:
-
6
- 样例输出:
-
0 0 1 1 0 1 1 2 3 0 1 1 2 3 5 8 0 1 1 2 3 5 8 13 21 0 1 1 2 3 5 8 13 21 34 55
思路:
利用数组存储斐波那契数列。
注意循环范围判断。
代码:
#include <stdio.h> int fib(int n) { int a; if (n==0) a = 0; else if (n==1) a = 1; else a = fib(n-2) + fib(n-1); return a; } int main(void) { int n, i, j; int f[1000]; while (scanf("%d", &n) != EOF) { for (i=0; i<2*n-1; i++) f[i] = fib(i); for (i=1; i<=n; i++) { printf("%d", f[0]); for (j=1; j<i; j++) printf(" %d %d", f[2*j-1], f[2*j]); printf("\n"); } } return 0; } /************************************************************** Problem: 1075 User: liangrx06 Language: C Result: Accepted Time:1830 ms Memory:912 kb ****************************************************************/
编程算法爱好者。