计算机二级C语言上机题库及答案(100套) 计算机二级c语言上机题库及答案 内部资料,切勿外传! .第1套 填空题 请补充FUN函数,FUN函数的功能是求10的阶乘。注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容, 仅在fun函数的横线上填入所编写的若干表达式或语句。试题程序: #include<> longfun(intn) { } main() { printf("10!=%ld\n",fun(10));} 第1处填空:n>1或1<n 第2处填空:n-1 第3处填空:1或11或1L 改错题 下列给定程序的功能是:读入一个整数K(2〈=K〈=10000), 打印它的所有因子(即所有为素数的因子)。例如,若输入整数2310,则应输出:2、3、5、7、11。 请改正程序中的错误,使程序能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序 的结构! 试题程序: #include<> #include<> /********found********/ IsPrime(intn); { inti,m; m=1; /********found********/ for(i=2;i<n;i++) if!(n%i) { m=0; break; } return(m); } main() { intj,k; printf("\npleaseenteranintegernumberbetween2and10000:"); scanf("%d",&k); printf("\n\nTheprimefactor(s)of%dis(are):",k);for(j=2;j<k;j++) if((!(k%j))&&(IsPrime(j))) printf("%4d,",j); printf("\n"); } 第1处:Isprime(intn);应改为Isprime(intn) 第2处:if!(n%i)应该为if(!(n%i)) 编程题 M个人的成绩存放在score数组中,请编写函数fun,它的功能是:返回低于平均分的认输,并将低于平均分的分数放在below所指的数组中。 例如,当score数组中的数据为10、20、30、40、50、60、70、80、90时,函数返回的认输应该是4,below中的数据应我10、20、30、40。注意:部分源程 序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 试题程序: #include<> #include<> #include<> intfun(intscore[],intm,intbelow[]) { } main() { inti,n,below[9]; intscore[9]={10,20,30,40,50,60,70,80,90};FILE*out; n=fun(score,9,below); printf("\nBelowtheaveragescoreare:");out=fopen("","w"); for(i=0;i<n;i++) { printf("%d",below[i]);fprintf(out,"%d\n",below[i]); } fclose(out); } 答案是: intfun(intscore[],intm,intbelow[]){ intI,k=0,aver=0; for(i=0;i<m;i++) aver+=score[i]; aver/=m; for(i=0;i<m;i++) if(score[i]<aver) { below[k]=score[i]; k++; } returnk;}第2套 填空题 请在函数FUN的横线上填写若干表达式,使从键盘上输入一个整数N,输出斐波纳契数列。斐波纳契数列是一种整数数列,其中每数等于前面两数之和,如:011235813….. 请勿改动主函数main和其他函数中的任何内容,仅在fun函数的横线上填入所编写的若干表达式或语句。 试题程序: #include<> intfun(intn); main(){ inti,n=0; scanf("%d",&n); for(i=0;i<n;i++) printf("%d",fun(i)); }
(doc)-计算机二级c语言上机题库及答案(100套) 来自淘豆网www.taodocs.com转载请标明出处.