请在函数fun()的横线上填写若干表达式,使从键盘上输入一个整数n,输出n对应的斐波那契数列。斐波那契数列是一整数数列,该数列自第三项开始,每数等于前面两数之和,即0,1,1,2,3,5,8,13,21,34,55,…。 注意:部分源程序给出如下。

admin2010-05-05  27

问题 请在函数fun()的横线上填写若干表达式,使从键盘上输入一个整数n,输出n对应的斐波那契数列。斐波那契数列是一整数数列,该数列自第三项开始,每数等于前面两数之和,即0,1,1,2,3,5,8,13,21,34,55,…。
   注意:部分源程序给出如下。
   请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。
   试题程序:
   #include<stdio.h>
   int fun(int n);
   main()
   {
     int i,n=0;
     scanf("%d",&n);
     for(i=0;i<n; i++)
       printf("%d",fun(i));
   }     
   int fun(int n)
   {      
     if(【  】)
       return 0;
     else
       if(【  】)
         return 1;
       else
         return【  】;
   }

选项

答案n==0 n==1 fun(n-1)+fun(n-2)

解析 第一空:斐波那契数列的特点是,第一项为0,第二项为1,从第三项开始,每数等于前面两数之和,所以n==0和n==1都是递归的终止条件,当n==0时,返回0。第二空:当n==1时,返回1。第三空:当n为非0和非1的数时,n对应的斐波那契数为前两项之和,即返回fun(n-1)+fun(n-2)。
转载请注明原文地址:https://kaotiyun.com/show/AHID777K
0

相关试题推荐
最新回复(0)