【参考答案】
int fun( int t)
{
int f0 = 0, f1 = 1, f ;
do {
f = f0 + f1 ;
f0 = f1 ;
f1 = f ;
} while(f < t) ;
return f ;
}
【考点分析】本题考查:变量数据类型及初始化;循环语句。
【解题思路】根据所给数列定义不难发现,该数列最终的结果是由两个数列之和组成,所以可以在循环内部始终把f看成是前两项之和,而f0始终代表第n-2项,f1代表第n -1项。退出循环时得到的数f,就是大于指定数的最小的数。
44
【参考答案】(1) a[](2) 2(3) i+1
【考点分析】本题考查:函数定义;for循环语句。
【解题思路】填空1:由main中函数调用语句确定函数定义的形式参数。填空2:for循环语句中,循环变量增值为2。填空3:确定for语句循环变量的初值。
【参考答案】(1)sum=0.0;(2)if((i+1)%5==0)
【考点分析】本题考查:if语句条件表达式,需注意其格式是否正确;变量定义和变量使用是否一致。
【解题思路】(1)变量sum书写错误。(2)循环条件if(i+1%5==0)是一个运算逻辑错误,应先计算i+1,再对5求余。
【参考答案】
double fun( STREC *a, STREC *b, int *n )
{
int i,j=0;
double ave=0.0;
for(i=0;i ave=ave+a[i].s; ave=ave/N;/*求平均值*/ for(i=0;i if(a[i].s
21

