计算机等级考试c语言

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1. /*求菲玻那契数列的前20项。菲玻那契数列前2项分别是1,1,从第3项开始,各项分别

是其前2项之和。*/

#include

void fibonacci(int f[])

{ int i;

/************Fill in the blanks************/

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

/************Fill in the blanks************/

f[i]=f[i-1]+f[i-2];

}

main()

{ int f[20]={1,1},i;

fibonacci(f);

printf("\n菲玻那契数列的前20项为: ");

for(i=0;i<20;i++){

if(i%5==0) printf("\n");

/************Fill in the blanks************/

printf("%12d",f[i]);

}

getch();

}

2. /*求广义菲玻那契数列的第n项。广义菲玻那契数列前3项分别是1,1,1,从第4项开始,

各项分别是其前3项之和。广义菲玻那契级数的前n项为:1,1,1,3,5,9,17,31,……。

例如,若n = 20,则应输出

广义菲玻那契级数的第20项为: 46499。*/

#include

long fibonacci(int n)

{ long a=1,b=1,c=1,d;

int i;

/************Fill in the blanks************/

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

{

/************Fill in the blanks************/

d=a+b+c;

a=b;

b=c;

c=d;

}

/************Fill in the blanks************/

return d;

}

main()

{ int n=20;

printf("广义菲玻那契级数的第%d项为: %ld\n",n,fibonacci(n));

getch();

}

5. /*在sum函数中,根据整型形参m,计算如下公式的值。

1 1 1 1

y = ------- + --------- + --------- + …… + -------

100*100 200*200 300*300 m*m 例如,若形参m = 2000,则程序输出:

The result is: 0.000160。*/

#include

/************Fill in the blanks************/

double sum(int m)

{ int i;

double y,d;

/************Fill in the blanks************/

y=0;

for(i=100;i<=m;i+=100){

d = (double)i * (double)i ;

y += 1.0/d;

}

/************Fill in the blanks************/

return(y);

}

main( )

{ int n = 2000 ;

printf("\nThe result is: %lf\n",sum(n));

getch();

}

11. /*统计子字符串substr在字符串str中出现的次数。

例如,若字符串为This is a C Program,子字符串为is,则应输出2。*/ #include

int count(char str[],char substr[])

{ int i,j,k,num=0;

/************Fill in the blanks************/

for(i=0;str[i]!='\0';i++)

for(j=i,k=0;substr[k]==str[j];k++,j++)

/************Fill in the blanks************/

if(substr[k+1]=='\0')

{

num++;

break;

}

/************Fill in the blanks************/

return num;

}

main()

{

char str[80],substr[80];

printf("Input a string: ");

gets(str);

printf("Input a substring: ");

gets(substr);

printf("The result is: %d\n",count(str,substr));

getch();

}

13. /*有一个3×4的矩阵,求所有元素中的最小值。*/

#include

min_value(int array[][4])

{ int i,j,min;

min=array[0][0];

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

/************Fill in the blanks************/

for(j=0;j<4;j++)

if(array[i][j]

/************Fill in the blanks************/

min=array[i][j];

/************Fill in the blanks************/

return(min);

}

main()

{ int a[3][4]={{-11,23,15,37},{29,48,6,-8},{15,17,34,12}}; printf("矩阵中所有元素的最小值=%d\n",min_value(a)); getch();

}

14. /*求班级学生考试成绩的平均值。*/

#include

float average(float array[],int n)

{ int i;

float aver,sum=array[0];

/************Fill in the blanks************/

for(i=1;i

sum=sum+array[i];

/************Fill in the blanks************/

aver=sum/n;

/************Fill in the blanks************/

return (aver);

}

main()

{ float score_1[5]={98.5,97,91.5,60,55};

相关文档
最新文档