全国计算机二级c语言上机考试题库.docx
《全国计算机二级c语言上机考试题库.docx》由会员分享,可在线阅读,更多相关《全国计算机二级c语言上机考试题库.docx(132页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2006年9月上机考试题库说明:上机考试正式系统题库中共有50套题目,考生随机从中抽取一套 进行考试。例如,如果你考的是二级C语言上机考试,那么你输入准考 证号并确认后,机器将从正式题库的50套题中随机为你抽取一套题目(包括一道程序填空题(30分)、一道程序修改题(30分)、一道程序设 计题(40分)共3题)让你考试,如果3题都完全答对,那么你上机考试 的成绩就是满分100分。(注:一般来说,抽题时,填空题第1题和修改 题第1题和编程题第1题会对应同时出现,如此类推)以下包括50套题(填空题、改错题、编程题各50道题目)和答案一、填空题(程序填空题)1、给定程序中,函数ftin的功能是将a和b
2、所指的两个字符串转换成面值 相同的整数,并进行相加作为函数值返回,规定字符串中只含9个以下 数字字符。 例如,主函数中输入字符串:32486和12345,在主函数请在程序的下面线处填入正确的内容并把下划线删除,使程序得出 正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!#include#include#include#defineN 9 long ctod( char *s) long d=0;while(*s) if(isdigit( *s) /* * * * *(J * * * * * */d=d* 10+*s-_1 _;/*tound
3、*/_2_; return d;)long fiin( char *a, char *b) /*found*/return 3main() char slN,s2N;do printf(Input string si : ); gets(sl); while( strlen(s 1 )N );do printffInput string s2 : ); gets(s2); while( strlen(s2)N);printf(The result is: %ldn, fun(sl,s2);2、给定程序中,函数fun的功能是:计算下式前n项的和作为函数值返回。=Ix3 + 3x5 + 5x7 +
4、 +(2x-l)x(2x + i)S = F +丁 + F + +(2x)2例如,当形参n的值为10时,函数返回:9.612558o请在程序的下 划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构! #include double fun(int n) int i; double s, t; /* * */ s=_l_; /* * * * *(J * * * * * */for(i=l; i= 2_; i+)t=2.0*i;/ * * * * * * * * * *(J * * * * * * *
5、* * * /s=s+(2.0*i-l)*(2.0*i+l)/_3_;) 一 return s;main() int n=-l;while(n0): ); scanf(%d,&n); printffnThe result is: %fn,fun(n);3、 给定程序中,函数fun的功能是:在3x4的矩阵中找出在行上最 大、在列上最小的那个元素,若没有符合条件的元素则输出相应信息。例如,有下列矩阵:12134781063597程序执行结果为:find: a22=9请在程序的下划线处填入正确的内容并把下划线删除,使程序得出 正确的结果。注意:源程序存放在考生文件夹下的BLANK.1.C中。 不得增
6、行或删行,也不得更改程序的结构!#include #defineM3#defineN4void fun(int (*a)N) int i=0,j,find=0,rmax,c,k;while( (iM) & (!find) rmax=ai0; c=0;for(j=l; jN; j+)if(rmaxaij) /*found*/rmax=aij; c= _1_ ;find=l; k=0;while(kM & find) /*(J * * * * * */if (k!=i & akc=rmax) find= _2_ ;k+;)i出find) printf(find: a%d%d=%dn,i,c,aic
7、);/ * * * * * * */_3_;)if(!find) printf(not found!n);)main()int xMN,i,j;printffEnter number for array:n);for(i=O; iM; i+)fdr(j=O; jN; j+) scanf(%d,&xij);printf(The array:n);fbr(i=O; iM; i+) for(j=O; jN; j+) printf(%3d,xij); printf(nn);)fun(x);4、给定程序中,函数fim的功能是:在形参ss所指字符串数组中,删除所 有串长超过k的字符串,函数返回所剩字符串的
8、个数。ss所指字符串数组 中共有N个字符串,且串长小于M。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出 正确的结果。注意:源程序存放在考生文件夹下的BLANKLC中。不得增行或删行,也不得更改程序的结构!#include #include #define N 5#define M 10int fiin(char (*ss)M, int k) int i,j=0,len;/*found*/fdr(i=0; i _1_; i+) len=strlen(ssi);/*tound*/if(len= _2_)/*nd*/strcpy(ssj+,_3_);)return j;main() c
9、har xNM=Beijing,Shanghai,Tianjing,Nanjing,Wuhan);int i,f;printf(nThe original stringnn);fbr(i=O;iN;i+)puts(xi); printf(n);f=fun(x,7);printffThe string witch length is less than or equal to 7 :n); fbr(i=0; if; i+) puts(xi);printf(n);5、给定程序中,函数firn的功能是根据形参i的值返回某个函数的值。当 调用正确时,程序输出:x 1=5.000000, x2=3.00
10、0000,xl*xl+xl *x2=40.000000请在程序的下划线处填入正确的内容并把下划线删除,使程序得出 正确的结果。注意:源程序存放在考生文件夹下的BLANKLC中。不得增行或删行,也不得更改程序的结构!#include double fl (double x) return x*x; double f2(double x, double y) return x*y; /* */_1_ fun(int i, double x, double y)if(i=D/ * * * * * * */return _2_(x);else/*nd*/return _3_(x, y); main()
11、 double xl=5, x2=3, r;r = fun(l, xl, x2);r += fun(2, xl, x2);printf(nxl=%f, x2=%f, x 1 *x 1+x 1 *x2=%fnn,x 1, x2, r);6、程序通过定义学生结构体数组,存储了若干名学生的学号、姓名和3 门课的成绩。函数fun的功能是将存放学生数据的结构体数组,按照姓名 的字典序(从小到大)排序。 请在程序的下划线处填入正确的内容 并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANKLC中。不得增行或删行,也不得更改程序的结构!#include #include stru
12、ct student long sno;char nameflO;float score3;);void fun(struct student a, int n)/ * * * * * * */_l_t;int i,j;/* nd*/for (i=0; i_2_; i+)for (j=i+l;j 0) t = ai; ai = aj; aj = t; )main() struct student s4= 10001,ZhangSan, 95, 80, 88,10002,LiSi, 85, 70, 78),10003,CaoKai, 75, 60, 88, 10004,FangFang, 90,
13、 82, 87);int i,j;printfifnnThe original data :nn);for (j=0; j4; j+) printf(nNo: %ld Name: %-8sScores: ,sj.sno,sj.name);for (i=0; i3; i+) printf(%6.2f , sj.scorei);printf(n);)fun(s, 4);printf(nnThe data after sorting :nn);for (j=0; j4; j+) printf(nNo: %ld Name: %-8sScores: ,sj.sno,sj.name);for (i=0;
14、i3; i+) printf(%6.2f , sj.scorei);printf(n);7、给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均 值(规定所有数均为正数),作为函数值返回;并将大于平均值的数放 在形参y所指数组中,在主函数中输出。例如,有 10个正数:46 30 32 40 6 17 45 15 48 26, 平均值为:30. 500000主函数中输出:46 32 40 45 48请在程序的下划线处填入正确的内容并把下划线删除,使程序得出 正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!#include #def
15、ine N 10double fun(double x ,double *y) int i, j; double av;/*found*/av=_ 1 _;/*found*/for(i=0; iN; i+) av = av + 2_;for(i=j=0; iav) y3= xi;yj=-l;return av;main () int i; double xN,yN;for (i=0; i=0; i+) printf (,z%5. If , yi);printf(n);8、给定程序中,函数fim的功能是:将a所指4x3矩阵中第k行的元素与第 0行元素交换。例如,有下列矩阵:12345678910
16、1112若k为2,程序执行结果为:789456123101112请在程序的下划线处填入正确的内容并把下划线删除,使程序得出 正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!#include #defineN3#defineM4/*tound*/void fun(int (*a)N, int _1_) int i,j,temp ;/* found */for(i = 0 ; i _2_ ; i+)temp=a0i;/* nd* */a0i=_3_;aki =temp ;)main() int xMN= 1,2,3,4,5,6,7,8,9,10
17、,11,12printf(The array before moving:nn);for(i=0; iM; i+) for(j=O; jN; j+) printf(%3d,xij);prints nn);fun(x,2);printffThe array after moving:nn);for(i=O; iM; i+) fbr(j=O; jN; j+) printf(%3d,xij); printf(nn);9、给定程序中,函数fUn的功能是:找出100999之间(含100和999) 所有整数中各位上数字之和为x (x为一正整数)的整数,然后输出;符合 条件的整数个数作为函数值返回。例如,当
18、x值为5时,100999之间各位上数字之和为5的整数有: 104、 113、 122、 131、 140、 203、 212、 221、 230、 302、 311、 320、 401、 410、500o共有15个。当x值为27时,各位数字之和为27的整数是:999。 只有1个。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出 正确的结果。注意:源程序存放在考生文件夹下的BLANK.1.C中。不得增行或删行,也不得更改程序的结构!#include fun(int x) int n, si, s2, s3, t;n=0;t=100;/* * * * *(J * * * * * */wh
19、ile(t=_1_)/*tound*/sl=t%10; s2=(_2_)%10; s3=t/100;/*found*/iRs 1 +s2+s3= 3_) printf(%d V)r- n+;)t;)return n;main() int x=l;while(x0): ); scanf(%d,&x); printffnThe result is: %dn,fun(x);10、给定程序中,函数fim的功能是:将形参s所指字符串中的数字字符 转换成对应的数值,计算出这些数值的累加和作为函数值返回。例如, 形参s所指的字符串为:abs5defl26jkm8,程序执行后的输出结果为:22。请在程序的下划
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全国计算机 二级 语言 上机 考试 题库
限制150内