全国计算机二级C语言上机参考题库.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《全国计算机二级C语言上机参考题库.docx》由会员分享,可在线阅读,更多相关《全国计算机二级C语言上机参考题库.docx(95页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、全国计算机二级C语言上机参考题库注意:填空题填好答案要去掉下划线。改错题*found*下面的一行为错误地方, 直接按答案更正即可。程序题答案只填在花括号中。(记得保存) 第01套:填空题:函数fun的功能是:把形参a所指数组 中的最大值放在a0中,接着求出a所 指数组中 的最小值放在al中;再把a所指数组元素中的 次大值放在a2中,把a数组元素中的次小值放 在a3中:其余以此类推。例如:若a所指数组中 的数据最初排列为:1、4、2、3、9、6、5、8、7,则按 规则移动后,数据排列为:9、1、8、2、7、3、 6、4、5。形参n中存放a所指数组中数据的个数。 请在程序的下划线处填入正确的内容并
2、把下划线 删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下BLANK1.C中。 不得增行或删行,也不得更改程序的结构! 给定源程序:#inciude #dcfine N 9/*found*/void fun(int 1, int n)ini i. j, max, min, px, pn, t;/* *found* */for (i=0; in-l; i+=_2)max = min = a|i;px = pn = i;/*Cu nd* */for (j=_3;jn;j+)if (max aj)min = aj; pn =j;if (px != i)t = a|i; a(i) = max
3、; apx| = t;if (pn = i) pn= px;)if(pn != i+l)t = ai+l I; a|i+l = min; apn| = t;)main()int bN= 1,423,9,6,5,8,7, i;printfCXnThe original data :n);for (i=0: iN; i+) printf(,%4d , b(i);printf(nM);fun(b, N);printf(nThe data after movingfor (i=0; iN; i+) printf(*%4d , bi);printfCXn0);)解题答案:/第一空/void fun(in
4、t *a, int n)/第二空*/for (i=0; in-l; i+=|)/第三空/for (j i+l; jn; j+)改错题:给定程序MODI I .C中函数fun的功能是: 按顺序给s所指数组中的元素赋予从2开始的偶 数,然后再按顺序对每五个元素求一个平均值, 并将这些值依次存放在w所指的数组中。若s所 指数组中元素的个数不是5的倍数,多余部分忽 略不计。例如,s所指数组有14个元素,则只对前10个元 素进行处理,不对最后的4个 元素求平均值。请改正程序中的错误,使它能得出正确结果。 注意:不要改动main函数,不得增行或删行,也 不得更改程序的结构。给定源程序:#include #
5、define SIZE 20fun(double *s, double *w)int k,i; double sum;for(k=2,i=0;iSIZE;i+)s(i=k; k+=2;/*fQ|jpJ* */sun=0.0:for(k=0,i=0;iSIZE;i+)sum+=s(ij;/*f()und* */if(i+I%5=0)wk=sum/5; sum=0; k+; return k;)main()double aSIZE,bSIZE/5;int i, k;k = fun(a,b);printf(The original dataAn1);for(i=0; iSIZE; i+)(if(i%
6、5=0) printfCn);printf(,%4.0f,a|i|);)printf(nnThe result :nH);for(i=0; ik; i+) printf(6.2f ,bi); printf(nn);I解题答案:/*found*/sum=0. 0:/*found*/if(i+l)%5=0)*程序题:学生的记录由学号和成绩组成,N名学 生的数据已在主函数中放入结构体数组s中,请 编写函数fun,它的功能是:把低于平均分的学生 数据放在b所指的数组中,低于平均分的学生人 数通过形参n传回,平均分通过函数值返回。注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其它函数中
7、的任何内容, 仅在函数fun的花括号中填入你编写的若干语句。 给定源程序:#include #define N 8typedef structchar num| 10;double s;STREC:double fun(STREC *a, STREC *b, int *n)(此处填写答案Imain()STREC sN= GA05”,85,“GA03”,76, ,GA02,694,,GA04,85h,GA0r,91h,GA07,;72, “G A08”,64, G A06”,87;STREC hN,l;FILE *out;int i,j,n; double ave;ave=fun(s,h,&n)
8、;printf(The %d student data which is lower than %7.3f:n,n,ave);fbr(i=0;in; i+)printf(n%s %4.1fn,hi.num,hi.s);printfCXn1);out = fopen(out.datt,w);fprintf(out, %dn%7.3fn, n, ave);for(i=0;in-l ;i+)for(j=i+l:jhU.s) l=hi ;hi=hU; hUt;fbr(i=0;in; i+)fclose(out);)解题答案:(int i;double ave = 0.0 ;*n = 0;for(i =
9、 0 ; i N ; i-H-) ave = ave + ai.s ;ave /= N ; /计算平均值*/for(i = 0 ; i N ; i+)if(ai.s ave) /*把低于平均值的记录存放到b 所指的数组中*/b|*n)=a|i| :(*n)+; /人数加 1 */return ave ; /*返回平均值*/# 第02套:填空题:给定程序的功能是:从键盘输入若干行 文本(每行不超过80个字符),写到文件 myfile4.txt中,用-1作为字符串输入结束的标志。 然后将文件的内容读出显示在屏幕上。文件的读 写分别由自定义函数ReadText和WriteText实现。 请在程序的下
10、划线处填入正确的内容并把下划线 删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下BLANK1.C中。 不得增行或删行,也不得更改程序的结构! 给定源程序:#include #include include void WriteText(FILE );void ReadText(FILE *):mainOFILE *fp;if(fp=fopen(*myfile4. txt*, *w*)=NULL) printf(* open fail!n*); exit(0); WriteText(fp);fclose(fp);if(fp=fopen(*myfile4. txt*, *r*)=NULL
11、) printf(* open fail!n*); exit(0); ReadText(fp): fclose(fp);)/* found*/void WriteText(FILE 1)char str81;printf(*nEnter string wi th _1 to end :n*);gets (str);while(strcmp(str, *-l*)!=0) / * f oiind* /fputs(2, fw); fputs(*n* fw);gets(str);) ) void ReadText(FILE *fr) (char str81;printf(*nRead file and
12、 output to screen :n);fgets(str, 81,fr);while(!feof(fr) /*found*/printf3);fgets(str, 81, fr);1)解题答案:/* 第一空 */void WriteText(FILE tfw)/* 第二空*/fputs(str, fw); fputs(*n*, fw);/* 第三空*/ printf (飞s”, str):*改错题:给定程序MODI1.C中函数fun的功能是: 从低位开始取出长整型变量s中奇数位上的数, 依次构成个新数放在t中。高位仍在高位,低位 仍在低位。例如,当s中的数为:7654321时,t中的数为
13、: 753 k请改正程序中的错误,使它能得出正确的结果。 注意:不要改动main函数,不得增行或删行,也 不得更改程序的结构! 给定源程序:#include /*found*/void fun (long s, long t)long sl=10;t = s % 10;while (s 0)(s = s/100;*t = s%10 * si + *t;/*found*/si = sl*|100;)mainO(long s, t;printf(*nPlease enter s:); scanf&s);fun(s, &t):printf(*The result is: %ldn* t);1解题答案
14、:/ *f oiind*/void fun (long s, long *t)/*f oiind*/sl=sl*I0;程序题:函数fun的功能是:将两个两位数的正 整数a、b合并形成一个整数放在c中。合并的 方式是:将a数的十位和个位数依次放在c数的 个位和百位上,b数的十位和个位数依次放在c 数的千位和十位上。例如,当a=45, b=12时,调用该函数后,c=1524o 注意:部分源程序存在文件PROGLC中。数据文 件IN.DAT中的数据不得修改。请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入你编写的若干语句。 给定源程序:ttinclude void fun
15、(int a, int b, long *c) ma i n ()int a,b; long c;void NONO ();printf(*Input a, b:);scanf (*%d, %d*, &a, &b);fun (a, b, &c);printf(*The result is: %ldn*, c);NONO O ;void NONO ()/本函数用于打开文件,输入数据,调用函数, 输出数据,关闭文件。*/FILE *rf, *wf ;int i, a, b ; long c ;rf = fopen(*in. dat*, r);wf = fopen(*out. dat*. *w*);
16、for(i = 0 ; i 10 ; i+) fscanf (rf, *%d, %d*, &a, &b);fun (a, b, &c);fprintf (wf, *a=%d, b=%d, c=%ldn*, a, b, c);1fclose(rf);fclose(wf);解题答案:(*c=(b/10)*l000+(a%10)*100+(b%10)*l0+(a/l0);# 第03套:填空题:给定程序中,函数fun的功能是:将自 然数110以及它们的平方根写到名为 myfile3.txt的文本文件中,然后再顺序读出显示在 屏幕上。请在程序的下划线处填入正确的内容并 把卜划线删除,使程序得出正确的结果
17、。注意:源程序存放在考生文件夹下的BLANK 1.C 中。不得增行或删行,也不得更改程序的结构! 给定源程序:include include int fun(char *fname)FILE *fp; int i, n; float x:if (fp=fopen(fname, *w*)=NULL) return 0: for(i=l;i=10;i+)/*found*/fprintf(1, *%d%fn*, i, sqrt(double)i);printf(*nSucceed! ! n*);/*found*/2;printf(*nThe data in file :n);/*founc*/if(
18、fp=fopen( 3, r)=NULL)return 0;fscanf(fp, &n, &x);while(!feof(fp)printf(*%d %fn*, n, x); fscanf(fp,&n,&x);fclose(fp);return 1;)main()char fname=*myfile3. txt*; fun(fname);)解题答案:/*第空*/fprint f (fp, *%d %fn*, i, sqrt (double) i);printf(*nSucceed! ! n*):/* 第二空*/ fclose(fp);/* 第 三空* /if (fp=fopen(fname,
19、*r*)NULL)*改错题:给定程序MODI1.C中fun函数的功能是: 将n个无序整数从小到大排序。请改正程序中的 错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也 不得更改程序的结构!给定源程序:#include #include fun (int n, int *a)int i, j, p, t;for (j = 0; jai)/* f oiind*/ t=i;if (p!=j)t = aj; aj = ap; ap = t;| )putarr(int n, int *z) int i;for (i = 1; i = n; i+, z+) printf(*%4d
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全国计算机 二级 语言 上机 参考 题库
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内