c语言二级考试试题.pdf
《c语言二级考试试题.pdf》由会员分享,可在线阅读,更多相关《c语言二级考试试题.pdf(74页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、二级C语言上机考试复习资料,共有50套题目一、程序填空题1、给定程序中,函数fu n的功能是:在任意给定的9个正整数中找出按升序排列时处丁中间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变,在主函数中输出处理后的数据序列,并将中间数作为函数值返同。例如,有9个正整数:1 5 7 2 3 8 7 5 8 2 1 4 5按升序排列时的中间数为:8处理后主函数中输出的数列为:8 8 8 2 3 8 7 8 8 2 1 4 5请在程序的卜划线处填入正确的内容并把下划线删除,使程序得出iE确的结果。注意:源程序存放在考生文件夹下的BLANKLC中。不得增行或删行,也不得更改程序的结构!#i
2、n c l ud e#d e f in e N 9in t f un(in i x )in t i,j,k,t,m id,b N ;f o r(i=0;i N:i+)b i=x i;f o r(i=0;i=N/2;i+)k=i;f o r(j=i+l;j b j)k=j;if(k !=i)(/*f o u n d*/t=b i;b i=1;b k =t;)/*f o u n d*/m i d=b 2 ;f o r(i=0;i N;i+)/*f o un(l*/if(x(i _ _ _ _3 _ _ _ _ _ m i d)x i=m id;r e t ur n m id;m a in()in
3、t i,x(N =1,5,7,2 3,8 7,5,8,2 1,4 5):f o r(i=0;i N;i+)p r in t f(%d ,x i);p r in t f(n T h e m i d d a t a is:%d n,f un(x);f o r(i=0;i N;i+)p r in t f(%d 0,x i);p r in(f(n);2、给定程序中,函数f u n的功能是建立一个N XN的矩阵。矩阵元素的构成规律是:最外层元素的值全部为1:从外向内第2层元素的值全部为2;第3层元素的值全部为3,依次类推。例如,若N=5,生成的矩陈为:1111112 2 2 112 3 2 112 2
4、2 111111请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANKLC中。不得增行或删行,也不得更改程序的结构!#in c l ud e#d e f in e N 7vo id f un(in t (*a)_ I _)(in ti f(N%2=0)m=N/2;e l s e m=N/2+l;f o r(i=0;i m;i+)/*f o u n d*/for(j=_2_;j N-i:j+)a i|j=a N-i-l j=i+l;f o r(k=i+l;k vN-i;k+)a k i=a k N-i-l =_ 3 _;m a in()i
5、n t x N L N =0 ,ij;f un(x);p r in t f(iiT h e r e s ul t is:n);f o r(i=0;i N;i+)f o r(j=0:j N;j+)p r in t f(%3 d ;x i j);p r in t f C Vn)3、给定程序中,函数f u n的功能是:将s所指字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的先后次序。例如,形参s所指的字符串为:d e f 3 5 a d h 3 k js d f 7n执行结果为:d e f a d h k js d f 3 5 3 7 c请在程序的下划线处填入正确的
6、内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!#in c l ud e vo id f un(c h a r *s)in t i,j=O,k=0;c h a r t I 8 O L t 2 8 0 ;f o r(i=0;s i!=V);i+)if(s i =0,&s i =9r)(/*f o un d*/t 2 Ul=s i;_1 _;)e l s e t l k+=s i;t 2 U=O;t l k =O;/*f o un d*/f o r(i=0;i k;i+)_ 2 _ _ _ _;/*C un d*/
7、f b r(i=();i 3 _;i+)s l k+ij=t 2 ij;m a in()(c h a r s 8 O =d e f 3 5 a d h 3 K js d f 7”;p r in t f(n T h e o r ig in a l s t r in g is :%s n,s);f un(s);p r in t f(A n T h e r e s ul t is :%s n,s);4、给定程序中,函数f u n的功能是:有N X N矩阵,以主对角线为对称线,对称元素相加并将结果存放在左下三角元素中,右上三角元素置为0。例如,若N=3,有下列矩阵:1 2 34 5 67 8 9计算结
8、果为1 0 06 5 01 0 1 4 9请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!#in c l ud e#d e f in e N 4/*C un d*/vo id f un(in t (*t)_ _ _ _ 1 _ _ _ _)(in t i,j;f o r(i=l;i N;i+)f o r(j=0;j i:j+)(/*C un d*/-2 _=t i Ul+t U l J;/*f o un d*/3=0;I1m a in()in t t N =2 1,1 2,1 3,2
9、 4,2 5,1 6,4 7,3 8,2 9 J 1,3 2,5 4,4 2,2 1,3 3,1 0),i,j;p r in(f(n T h e o r ig in a l a r r a y:n);f o r(i=0;i N:i+)f o r(j=0;j N:j+)p r in t f(%2 d Ri 皿):p r in t f C A n);f un(t);p r in t f(n T h e r e s ul t is:n);f o r(i=0;i N:i+)f o r(j=0;j N;j+)p r in t f(%2 d 1国I jD;p r in t f(A n);5、给定程序中,函
10、数fu n的功能是:对形参s所指字符串中卜标为奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出,存入形参p所指字符数组中,形成一个新串。例如,形参s所指的字符正为:b a a w r s k j g h z l i c d a,执行后p所指字符数组中的字符串应为:a a chjlsw。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B L A N K 1.C中。不得增行或删行,也不得更改程序的结构!#include v oid fun(cha r*s,cha r*p)(int i,j,n,x,t;n=0;for(i=0;
11、sil!=W;i+)n+:for(i=l;i n-2:i=i+2)/*f o u n d*/_1_;/*f o u n d*/for(j=一2 _+2 ;j sj)t=j;if(!=i)x=si;si=st;st=x;Ifor(i=lj=0;i n;i=i+2,j+)/*f o u n d*/p(jl=一3;ma in()cha r s8 0=,ba a w rskjghz licda ,p5 OJ;printf(nThe origina l string is:%sn,s);fun(s.p);printf(nThe result is:%sn,p);6、程序通过定义并赋初值的方式,利用结构体
12、变量存储了 一名学生的信息。函数f u n的功能是输出这位学生的信息。请在程序的下划线处填入正确的内容并把下划线删除.使程序得出正确的结果。注意:源程序存放在考生文件夹下的B L A N K 1.C中。不得增行或删行,也不得更改程序的结构!#include ty pedef struct int n u m;cha r na me9;cha r sex;struct int y ea r.month.da y ;birthda y;floa t score3;S T U;/*R j u n d*/v oid s h o w(S T U _ J_)int i;printf(n%d%s%c%d-%
13、d-%d ,tt.num.tt.na me,n.sex,tt.birthda y,y ea r,tt.birthda y,m o n th,tt.birthda y.da y);for(i=0;i 3;i+)/*:$:f o u n d*/printf(%5.1f_ 2一);printfCAn);m a i n()(S T U std=h-Zha nghua ;M,19 6 1,10,8,7 6.5,7 8.0,8 2.0 ;printf(nA student da ta:n);/*f o u n d */s h o w(_ 3_);7、给定程序中,函数f u n的功能是:计算NXN矩阵的主对
14、角线元素和反向对角线元素之和,并作为函数值返回。注意:要求先累加主对角线元素中的值,然后累加反向对角线元素中的值。例如,若N=3,有下列矩阵:I 2 34 5 67 8 9 fun函数首先累加1、5、9,然后累加3、5、7,函数的返回值为30。清在程序的卜划线处填入iE确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B L A N K L C中。不得增行或删行,也不得更改程序的结构!#include#define N 4fun(int tN,in n)int i,sum;/*found*/1;for(i=0;i n;i+)/*found*/sum+=2;for(i
15、=0;i n;i+)/*found*/sum+=_ 3_ ;return sum;ma in()int t0N=21,2,13,24,25,16,47,38,29,ll,32,5 4,42,21,3J0),ij;printf(nThe origina l da ta:n);for(i=0;i N;i+)for(j=0;j N:j+)printf(%4d,tij);printf(nM);)printf(The result is:%d.fun(t,N);8、给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),作为函数值返回;并将大于平均值的数放在形参y所指数
16、组中,在主函数中输出。例如,有 10 个正数:46 30 32 40 6 17 45 15 48 2 6,平均值为:30.5 00000主函数中输出:46 32 40 45 48请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B L A N K L C中。不得增行或删行,也不得更改程序的结构!#include#include#define N 10double fun(double x|,double*y)int ij;double a v;/*found*/a v=_ l _;/found*/for(i=0;i N;i+)a v =a v
17、 +_ 2_;for(i=j=0;i a v)y _ 3 _ =x i;return a v;ma in()int i;double x|N 1 =46,30,32,40,6,17,45,15,48,26);double y N;for(i=0;i=0;i+)printf(%5.0f ,y i);printf(An);9、给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数).将所指数组中小于平均值的数据移至数组的前部,大于等T平均值的数据移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。例如,有 10 个正数:46 30 32
18、40 6 17 45 15 48 2 6,平均值为:30.5 0(X)00移动后的输出为:30 6 17 15 26 46 32 40 45 48请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B L A N K l.C 1 o不得增行或删行,也不得更改程序的结构!#include#include#define N 10double fun(double*x)int i.j;double a v,y N;a v=0;/*f0und*/for(i=0;i N;i+)a v +=1;for(i=j=0;i N;i+)if(x i a v)/*f
19、ound*/y lj=x i;i=0:w hi!e(i N)if(x i!=-l)y j+=x i;/*found*/_ 3 _;fbr(i=O;i N:i+)x ij=y i:return a v;)ma in()(int i;double x N;for(i=();i N:i+)x i=ra nd()%5 0;printf(%4.0fprintf(n);printfCAnThe a v era ge is:%fn fun(x);printf(nThe result:n,fun(x);for(i=0;i N;i+)printf(%5.0f .x i);printfCAn);10、给定程序中,
20、函数f u n的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),将所指数组中大于平均值的数据移至数组的前部,小于等于平均值的数据移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。例如,有 10 个正数:4 6 30 32 40 6 17 45 15 48 2 6,平均值为:30.5 00000移动后的输出为:46 32 40 4 5 48 3 0 6 17 15 26请在程序的下划线处填入iE确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B L A N K L C中。不得增行或删行,也不得更改程序的结构!#incl
21、ude#include#define N 10double fun(double*x)int i,j;double s,a v,y N;s=0;for(i=0;i N;i+)s=s+x i;/*Cund*/av=_ l _;for(i=j=0;i a v)/*found*/y _2_j=x i;x i=-i;for(i=0;i N;i+)/*他un j*/if(x i!=_ 3 _)y j+=x i;for(i=0;i N;i+)x i=y il;return a v;ma in()int i;double x N=46 30,32,40,6,17,45,15,48,26);for(i=0;i
22、 N;i+)printf(%4.0f ,x i);printf(nThe a v era ge is:%fn,fun(x);printfCAnThe result:n,fun(x);fdr(i=O;i N;i+)printf(%5.0fprintf(n);II、函数f u n的功能是:把形参a所指数组中的奇数按原顺序依次存放到a Oh a l、a 2、中,把偶数从数组中删除,奇数个数通过函数值返回。例如:若a所指数组中的数据最初排列为:9、1、4、2、3、6、5、8、7,删除偶数后a所指数组中的数据为:9、1、3、5、7,返回值为5。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正
23、确的结果。注意:源程序存放在考生文件夹下的B L A N K L C中。不得增行或删行,也不得更改程序的结构!#include#define N 9int fun(int a,int n)(int i,j;j=0;for(i=0;i n;i+)/*found*/i f(a i%2=_ l _)(/*found*/a fj=a il;-2一;)/*found*/return_3_;)ma in()int bN=9,1.4,2,3,6,5,8,7 .i,n;prirKf(nTlic origina l da ta :n);for(i=0;i N;i+)printf(%4d ,bi);printfC
24、 Nn):n=fun(b,N);printK AnThe nu m b e r of odd:%d n.n);printf(nThe odd nu m b e r An);for(i=0;i n;i+)printf(%4d ,bi);printf(An);12、给定程序中,函数f u n的功能是:求s s所指字符串数组中长度最短的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指变量中。s s所指字符串数组中共有M个字符串,凡串长 N。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B L A N K L C中。不得增行或删行,也
25、不得更改程序的结构!/include#include#define M 5#define N 20int fun(cha r(*ss)NJ,int*n)(int i,k=0,len=N;/*found*/for(i=0;i _ I_;i+)len=strlen(ssij);if(i=0)*n=len;/*found*/if(len 2 *n)*n=len;k=i;r e t u m(_ 3 );ma in()cha r ssMN=sha ngha i ,gua ngz hou,beijing,tia njing,*chongqing);int n,k,i;printf(nThe origina
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 二级 考试 试题
限制150内