斐波那契数列-专题讲解

斐波那契数列-专题讲解

 

1、斐波那契数列特点:

a、除第一项和第二项之外,任意一项是前面两项之和。

b、第一项和第二项的值是首先给定的。

 

2、真题解析

本题的考点是斐波那契数列和子函数的结合。本题主要考了斐波那契数列。

 

2009年秋试题3

阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案

【程序说明】

计算并输出Fibonacci序列前10项之和。要求定义和调用函数fun(fib,n)。该函数将Fibonacci序列前n项的值存放在一维数组fib中。Fibonacci序列:1,1,2,3,5,8,13,21,34,55,……。该序列的第一个数和第二个数都是1,从第三个数开始,每个数都是前两个数之和。

运行示例:

sum=143

 

【程序】

#include <stdio.h>

main()

{  int i,sum,a[10];

   (9)    

   (10)   

sum=0;

for(i=0;i<10;i++)

sum=sum+   (11)    ;

printf("sum=%d ",sum);

}

void fun(int fib[],int n)

{  int i=0;

fib[0]=fib[1]=1;

for(i=2;i<n;i++)

   (12)    

}

 

【供选择的答案】

(9) A、fun(int fib[],int n); B、void fun(int fib[],int n)

C、; D、void fun(int fib[],int n);

(10)A、fun(fib,n); B、fun(a[],10);

C、fun(a,10); D、fun(a[10],10);

(11)A、fib[i] B、a[i] C、a[10] D、fib[0]

(12)A、fib[i]=fib[i-1]+fib[i-2];

B、fib[i-1]=fib[i-2]+fib[i-3];

C、fib[i+1]=fib[i]+fib[i-1];

D、fib[i]=fib[i-1]+fib[i+1];

 

3、参考答案以及说明

#include <stdio.h>

main()

{  

int i,sum,a[10];

void fun(int fib[],int n);    //9 由于子函数定义在后面,这里是函数说明

fun(a, 10);   //10 调用子函数,计算出前10项斐波那契数列的值,放在数组a里面

sum=0;

for(i=0;i<10;i++)

sum=sum+   a[i]    ; // 11 对a数组的前面10项求和

printf("sum=%d ",sum);

}

 

void fun(int fib[],int n)

{  

int i=0;

fib[0]=fib[1]=1;

for(i=2;i<n;i++)

fib[i]=fib[i-1]+fib[i-2];    //12 根据斐波那契数列的定义,计算任意一项

}

 

 

4、注意本题的函数说明

函数的说明有两种方法

第一种:

#include <stdio.h>

 

void fun(int fib[],int n); 

 

main()

{  

....

}

 

第二种:

#include <stdio.h>

 

main()

{  

 

void fun(int fib[],int n); 

....

}

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值