- 论坛徽章:
- 0
|
请各问各位前辈,用C语言编一个程序计算出斐波那契数列的第N位数,如果不用递归算法而是用循环的话,应该如何实现呢(最好也不用数组)?我想了一个下午都没有任何进展,请各位帮忙看看。感激不尽!
下面我做了个函数调用的测试,但关键部位还是想不出来。- #include <stdio.h>
- unsigned long test_fibonacci(int n);
- int main(void)
- {
- int n;
-
- printf("Enter a positive integer (q to quit): ");
- while(scanf("%d", &n) == 1)
- {
- printf("\nThe %dth number in the fibonacci numbers is %lu",
- n, test_fibonacci(n));
- printf("\nEnter a positive integer (q to quit): ");
- }
- puts("\nDone!");
- return 0;
- }
- unsigned long test_fibonacci(int n)
- {
- int i, sum = 0;
- if(n <= 2)
- sum = 1;
- else
- for(i = 2; i <= n; i++)
- {
- }
- return sum;
- }
复制代码 |
|