问题 问答题

使用VC++6.0打开考生文件夹下的源程序文件2.cpp,请实现函数fun(double a[],int len)的如下功能:
(1)a[]是一个数组,长度为len。
(2)a[0]=0,a[1]=1。
(3)a[i+2]=a[i]+a[i+1]。
注意:不能修改函数的其他部分。
试题程序:
#include<iostream>
void fun(double a[],int len)


void main()

double a[20];
fun(a,20);
for(int i=0;i<20;i++)

std::cout<<a[i]<<’’;
if(i%6==5)
std::cout<<std::end1;

return;

答案

参考答案:void fun(double a[],int len)
{
if(len>0)
a[0]=0;
if(len>1)
a[1]=1;
for(int i=2;i<len;i++)
a[i]=a[i-1]+a[i-2];
}

解析: 本题考查的是计算数列值。首先给a[0]和a[1]赋初值,注意判断数组是否越界,然后循环遍历a[2]~a[len-1],根据题目给出关系计算每一个元素的值。

填空题
选择题