【2006年全国房价】2006年9月全国等级考试三级c语言上机题库(三十五)

试题集锦 2023-06-15 网络整理 可可

【shitiku.jxxyjl.com--试题集锦】

★☆题目35(无忧id 20 级数运算题)

 

某级数的前两项a1=1,a2=1,以后各项具有如下关系:

an=an-2+2an-1(注:n-2与n-1为下标)

下列程序prog1.c的功能是:要求依次对于整数m=100,1000和10000求出对应的n值,使其满足:sn<m且sn+1>=m,这里sn=a1+a2+...+an,并依次把n值存入数组单元b[0],b[1]和b[2]中,请编制jsvalue()函数来实现此功能,最后调用函数writedat()把数组b[]中的值输出到out.dat文件中。

请勿改动主函数main()和写函数writedat()的内容。

#include <stdio.h>

int b[3];

 

jsvalue()

{int a1=1,a2=1,a12,sn,k=2;

sn=a1+a2;

while(1)

{a12=a1+2*a2;

if(sn<100&&sn+a12>=100) b[0]=k;

if(sn<1000&&sn+a12>=1000) b[1]=k;

if(sn<10000&&sn+a12>=10000) {b[2]=k;break;}

sn=sn+a12;

a1=a2;a2=a12;

k++;

}

}

 

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("out.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);

}

 

运行结果为:

m=100,n=6

m=1000,n=9

m=10000,n=11

本文来源:https://shitiku.jxxyjl.com/shitijijin2/27208.html

Copyright @ 2011- 考试题库网 All Rights Reserved. 版权所有

免责声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。

 站长统计