计算机三级上机题库练习及答案(6)
来源:优易学  2010-1-14 16:06:11   【优易学:中国教育考试门户网】   资料下载   IT书店
第11题:
   某级数的前两项A1=1,A2=1,以后各项具有如下关系:
An=An-2+2An-1
下列程序的功能是:要求依次对于整数M=100、1000和10000求出对应的n值,使其满足:Sn=M,这里Sn=A1+A2+…+An,并依次把n值存入数组单元b[0],b[1]和b[2]中,请编制jsValue()函数来实现此功能,最后调用函数writeDat()把数组b[]中的值输出到out11.dat文件中。 

请勿改动主函数main()和写函数writeDat()的内容。
#include
int b[3];
void jsValue()
{

}
main()
{
jsValue();
printf("M=100,n=%d\nM=1000,n=%d\nM=10000,n=%d\n",b[0],b[1],b[2]);
writeDat();
}
writeDat()
{
FILE *fp;
fp=fopen("out11.dat","w");
printf("%d\n%d\n%d\n",b[0],b[1],b[2]);
fprintf(fp,"%d\n%d\n%d\n",b[0],b[1],b[2]);
fclose(fp);
}
【答案】
void jsValue()
{
int A1=1,A2=1,n=1,An;
int sum0,sum;
sum0=A1+A2;
while(1)
{
An=A1+A2*2;
sum=sum0+An;
A1= A2; A2= An;n++;
if(sum0<100&&sum>100)b[0]=n;
if(sum0<1000&&sum>1000)b[1]=n;
if(sum0<10000&&sum>10000){b[2]=n;break;}
sum0=sum;
}
}
【解析】
考点:(1)计算数列的前n项和Sn;
(2)找到着满足条件的Sn。……

责任编辑:小草

文章搜索:
 相关文章
热点资讯
热门课程培训