下面的程序用递归定义的方法实现求菲波拉契数列1、1、2、3、5、8、13、21……第
7项的值fib(7),菲波拉契数列第1项和第2项的值都是1。请将程序补充完整。
#include
long fib(【1】)
{
switch(g) {
case 0: return 0;
case 1:
case 2: return 1; }
return (【2】); }
main()
{ long k;
k=fib(7);
printf("k=%d
",k);
}
7项的值fib(7),菲波拉契数列第1项和第2项的值都是1。请将程序补充完整。
#include
long fib(【1】)
{
switch(g) {
case 0: return 0;
case 1:
case 2: return 1; }
return (【2】); }
main()
{ long k;
k=fib(7);
printf("k=%d
",k);
}
举一反三
- 下列给定程序中函数fun的功能是:用递归算法计算斐波拉契数列中第n项的值。从第1项起,斐波拉契数列为:1、1、2、3、5、8、13、21、......例如,若给n输入7,则该项的斐波拉契数值为13。#includelongfun(intg){switch(g);{case0:return0;/**********found**********/____________}return(fun(g-1)+fun(g-2));}main(){longfib;intn;printf("Inputn:");scanf("%d",&n);printf("n=%d",n);fib=fun(n);printf("fib=%d",fib);} A: case 1 ;case 2 : return 1 ; B: case 1:case 2:return 1; C: case 1 :case 2 : return 1 ; D: case 1 ;case 2 : return 1 ,
- 题目:斐波那契数列。需求:斐波那契数列:0、1、1、2、3、5、8、13、21、34、……。输出第100个斐波数思路:根据数列规律可以得出下一个数值都是前两个数值的和def fib(n): if n == 1 or n == 2: return 1 ______________________print (fib(100)) A: return fib(n)+fib(n-2) B: return fib(n-1)+fib(n-2) C: fib(n-2)+fib(n-2) D: return fib(n-1)return fib(n-2)
- 题目:斐波那契数列。 需求:斐波那契数列:0、1、1、2、3、5、8、13、21、34、……。输出第100个斐波数 思路:根据数列规律可以得出下一个数值都是前两个数值的和 def fib(n): if n == 1 or n == 2: return 1 ______________________ print (fib(100))
- 以下程序运行后的输出结果是______。 void main() { int s=0,k; for(k=7; k>=0; k--) { switch(k) { case 1: case 4: case 7: s++; break; case 2: case 3: case 6: break; case 0: case 5: s+=2; break; } } printf("s=%d\n",s); }
- 编程产生菲波拉契数列20项,例如:0 1 1 2 3 5 8 13 21 ……