国二C语言上机考试习题库.docx
《国二C语言上机考试习题库.docx》由会员分享,可在线阅读,更多相关《国二C语言上机考试习题库.docx(95页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一、填空题考试做题要求:1、在1处填写正确的答案,并将下划线和数字删除。2、落题目碱浣之后一定要保存。1、3、不能删除,*found*/,也不能多行或少行。给定程序中,函数fun的功能是:在形参ss所指字博第数组币,删除所有串长超过k的字 :,一二二二二剩字符串的个数。ss所指字符串数组中共有N个字和串,且串长小于M。 请在程序的下胤线处填入正确的内宜并把下划线删除,程程序得出正确的结果。符串,函数返回所剩注意:#include#include#define#define源程序存放在考生文件夹卜的BLANK 1. C中。 不得瑙行或删行,也不得更改程序的结构!N 5M 10int fun(ch
2、ar (*ss)M, int k) int i,j=0,len;/*found*/for(i=0; i _ 1_ i+) len=strlenlssliJ);/*found*/if(len= 2)/*found*/ strcpy(ssj+,_3_);return j;main() char xNM=Beijing, Shanghai, Tianjing, Nanjing, Wuhan;int i, f;printf (z,nThe original stringnn);for(i=0;iN;i+)puts(x i); printf(n);f=fun(x、7);printf(The string
3、 witch length is less than or equal to 7 :n);for(i=0; if; i+) puts(xil);printf(n);1N2-k3ssi森懈寥篇雕瞿舞赞是:找出NXN矩阵中每列元素中的最大值,并按顺序依次整程翻牖髓轴蟒翳鼐*跟蟹不得增行或删行,也不得更改程序的结构!,使程序得出正确的结果。#include #define N 4void fun(int (*a)NJ, int *b) int i,j;for(i=0; iN; i+) /* fou nd*/for(i=l;jN;i+)/* fou n d */if(bi _2_ aji) bi=aj
4、i;main() int xNJN= 12,5,8,7,6,1,9,3,1,2,3,4,2,8,4,3 ,yNJ,i,j;printf(nThe matrix :nn);for(i=0;iN; i+) for(j=0;jN; j+) printf(%4dH,xij);printf(nnM);/* fou nd*/)fun(_3);printf(nnThe result is:);for(i=0; iN; i+) printf(,%3d,yi);printf(nn);1aOJiJ 2-y3-x,y3、给定程序中,函数ftin的功能是:将形参s所指字符串中的数字字符转换成对应的数值, 计算出这些数
5、值的累加和作为函数值返回。例如,形参s所指的字符串为:abs5defl26jkm8,程序执行后的输出结果为:22。 请在程序的下划线处填入正确的内容并把P划线删除,使程序得出正确的结果。注意:源程序存放在考生文祥夹卜制BLANK1.C中。不得增行或删行,也不得更改程序的结构!#include#include #includeint fun(char *s) int sum=0;while(*s) /* fou nd */if( isdigit(*s) sum+= *s- _1_ /* fou n d */)/* fou n d */return _3_ ;.main() char s81; i
6、nt n;printf(nEnter a string:nn); gets(s);n=fun(s);printf(HnThe result is: %dnnn,n);3: 01 4802 s+03、 sum 4、给定程序中,函数fun的功能是:找出100999之间(含100和999)所有整数中各位上 数字之和为X(X为一正整数)的整数/后输出;符合条件的整数个数作为函薮值返回。例如,当x值为5时,100999之间各位上数字之和为5的整数有:104、113、122、 131、140、203、212、221、230、302、311、320、401、410、500。共有 15 个。当 x 值为 27
7、时,洛位数字之和为27的整数悬:999o只有1个。请淀程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C权不相增拧或删行,也不得更改程序的结构!#include fun(int x) int n, si, s2, s3, t;n=0;t=100;/* * fou nd* */while(t=_1_)/* *fou nd */sl=t%10; s2=(_2_)% 10; s3=t/100;/* fou n d */if(sl+s2+s3=_3_) printf(%d ,t);n+;)t+;|return n;.main() int
8、x=-l;while(x0): ); scanf(%dM,&x); printf(HnThe result is: %dn,fun(x);5、给定程序中,函数ftin的珑熊是建立一个NxN的矩阵。矩阵元素的构成规律是:最外层-1;从外向内至2层元素的值全部为2;第3层元素的值全部为3,依次类元素的值全推。例如,若N=5,1222112321生成的矩阵为:12221:源程序存放在考生文件夹卜.的BLANK1.C中。不得增行或删行,也不得更改程序的结构!除,使程序得出正确的结果。#include #define N 7/*n d */void fiin(int (*a) 1) intif(N%2=
9、0) m=N/2 ;elsem=N/2+1;for(i=0; im; i+) /* fou n d */for(j=_2_;jN-i;j+)aiJU=aN-i:lj=i+l;for(k=i+1; kN-i; k+)/* fou nd*/aki=akN-i-l=_3_;main() int xNN=0,i,j;fun(x);printf(nThe result is:n);for(i=0; iN; i+) for(j=0;jN;j+) printf(%3d,xilj); printf(n);J 16、给定程序中,函数fu&为正数),作为函数值返回;参x所指数组中NI的加软F橇嚼裳鬻瞥耨睛用个数的
10、平均值(规定所有数均 指数组由,隹凄函脚输出。例如,有 10 个正数:46 30 32 40 6 17 45 15 48 26,平均值为:30.500000主函数更输出:46 32 40 45 48请在程序的下划线处填入正确的内容并把卜.划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中。不浦塔彳亍或删行,也不得更改程序的结构!#include #define N 10double fun(double x,double *y) int i,j; double av;/* fou n d */av=_1_;/* fou n d */for(i=0; iN; i+
11、) av = av + 2 for(i=j=0; iav) y_3_= xi; yUl=-i;return av;main() int i; double xN,yN;for(i=0; i=0; i+) printf(%5.1 f,yi);printf(n);7、给定程序中,函数fun的功能是:将a所指4x3矩阵中第k行的元素与第0行元素交换。 例如,有下列矩阵:1471011若k为2, 7845612310111236912程序执行结果为: 9请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹卜一的BLANK1.C o不得增行或删行,也不得更
12、改程序的结构!#include #defineN3#defineM4/* fou n d */ void fun(int (*a)N, int _1_) int iJ,temp;/*n d */for(i = 0;i _2_ ; i+) temp=af01i;/字字字字半半字半字半字字字半半半字字字/a0i=_3_;aki = temp;).main() int xMN= 1,2,3,4,5,6,7,8,9, 10,11,12 ,i,j;printf(The array before moving:nn);for(i=0; iM; i+) for(j=0; jN; j+) printf(%3d
13、,xij);printf(nn);fun(x,2);printf(The array after moving:nn);ror(i=0; iM; i+) for(j=0; jN;j+) printf(%3d,xij);printf(nn);L给定程序中,函数fiin的功能是根据形参i的值返回某个函数的值。当调用正确时,程序 输出:x 1=5.000000, x2=3.000000, xl *xl+xl *x2=40.000000请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下茴BLANKLC中。不再增彳亍或删行,也不得更改程序的结构!#inc
14、lude double fl (double x) return x*x; double f2(double x, double y) return x*y; /* fou n d */_1_ fiin(int i, double x, double y) if(i=D/* fou n d */return _2_(x);else/* fou n d */return _3(x, y);)main() double xl=5, x2=3, r;r = fun(l, xl, x2);r += fun(2, xl, x2);其他printf(Mnxl=%f, x2=%f, x 1 *x 1 +x
15、1 *x2=%fnnM,x 1, x2, r); 1 9、给足程序中,函数ftin的功能是:将形变s所指柒符串中的所有数字字符顺序前移, 字符顺序后移,处理后新字存婚的首地址佰为函薮宿返回。例如,s所指字符中为:asdl23fgh5#43df, 处理后新字符串为:123543asdfgh#df。请在程序的下划线处填入正确的内番并把下划线删|除,使程序得出正确的结果。注意:源程序荐放在考生文徉夹下的BLANK1.C 不得增行或删行,也不得更改程序的结构! #include #include #include #include char *fun(char *s) int i, j, k, n;
16、char *p, *t;n=strlen(s)+l;t=(char*)malloc(n*sizeof(char);p=(char*)malloc(n*sizeof(char);j=0; k=0;for(i=0; in; i+) if(isdigit(si) /* fou n d */p_l_l=si; j+;) else tlk=si; k+; J /* fou n d */for(i=0; i_2_; i+) pj+il= ti; pj+k=O;/*n d */return _3_;.main() char s80;printf(nPlease input: ); scanf(,%s,s);
17、 printf(HnThe result is: %sn,fun(s);10、给定程度中,函数fun的功能是:在3x4的矩阵中找出在行上最大、在列上最小的那个 元素,若没看符合条件的元素则踹出相应信息。例如,有下列矩阵:12134781063597程度执行结果为:find: a2J12=9请走程序的下划线处填入正潞曲内容并把卜划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANKLC中。不得增行或删行,也不得更改程序的结构!#include #defineM3#defineN4void fun(int (*a)N) int i=0,j,find=0,rmax,c,k; wh
18、ile( (iM) &(!find) rmax=ai 0; c=0;for(j=l; jN; j+)if(rmaxai皿)/* fou n d */rmax=aijj; c= _1一 ; find=l; k=0;while(kM & find) /* fou nd*/if (k!=i & akc=rmax) find= _2_ ; k+;if(find) printf(nfind: a%d%d=%dn,i,c,aic);/* fou n d */_3_;)if(!find) printf(Hnot found!nM);.main()int xMN,i,j;printf(Enter number
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 上机 考试 习题
限制150内