二级C语言.pdf

上传人:文*** 文档编号:88059569 上传时间:2023-04-20 格式:PDF 页数:66 大小:6.98MB
返回 下载 相关 举报
二级C语言.pdf_第1页
第1页 / 共66页
二级C语言.pdf_第2页
第2页 / 共66页
点击查看更多>>
资源描述

《二级C语言.pdf》由会员分享,可在线阅读,更多相关《二级C语言.pdf(66页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、二级C语言上机考试复习资料,共有50套题目一、程序填空题1、给定程序中,函数f u 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请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B L A N K 1.C中。不得增行或删行,也不得更改程序

2、的结构!#i n c l ud e#d e f i n e N 9i n t f un(i n t x )i n t i j,k,t,m i d,b N ;f o r(i=0;i N d+)b i =x i ;f o r(i=0;i =N/2;i+)k=i;f o rO=i+l y b(j )k=j;i f(k !=i)t=b i l;b i =_ _ _1 _ _ _ _;b k l=t:)/*f o un d*/m i d=b _ _ _ _ 2 _ _ _;f o r(i=0;i N;i+)/*f o un d*/i f(x i j _ _ _ _ 3 _ _ _m i d)x i =m

3、 i d;re turn m i d;m a i n()i n t i,x N =1,5,7,2 3,8 7 ,8,2 1.4 5);f o r(i=0;i N;i+)p ri n tf(%d ,x i );p ri n tf(n T h c m i d d a ta i s:%d n,f un(x);f o r(i=0;i N;i+)p ri n tf(%dp ri n tf C Xn1);2、给定程序中,函数f un的功能是建立一个NX N的矩阵。矩阵元素的构成规律是:最外层元素的值全部为1:从外向内第2层元素的值全部为2:第3层元素的值全部为3,依次类推。例如,若N=5,生成的矩阵为:1

4、11111 2 2 2 11 2 3 2 11 2 2 2 111111请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK 1.C中。不得增行或删行,也不得更改程序的结构!#i n c l ud e#d e f i n e N 7/*f o un d*/vo i d f un(i n t(*a)_ 1 _)i n t i j,k,m;i f(N%2=0)m=N/2 :e l se m=N/2+l;f o r(i=0;i m;i+)/*f o un d*/f o r(j=_2_;j i+l;f o r(k=i+l;k N-i;k+)/

5、*f o un d*/a k i =a k N-i-l =_ 3 _;)n i a i n()i n t x N N =0 h i j;f un(x);p ri n tf(n T h e re sul t i s:n);f o r(i=0;i N;i+)f o r(j=0;j N;j+)Pri n tf(,%3 d,x l i J j J);p ri n tf(n);3、给定程序中,函数f ti n的功能是:将s所指字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的先后次序。例如,形参s所指的字符串为:d e f 3 5 a d h 3 k j sd t70执行

6、结果为:d e f a d h k j sd f 3 5 3 7 o请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANKLC中。不得增行或删行,也不得更改程序的结构!#i n c l ud e vo i d f un(c h a r*s)i n t i,j=O,k=O;c h a r tl 8 O J,t2 8 0 ;f b r(i=O;s i !=f O ;i+)i f(s i =0&s i k=9 )(/*砧un d*/t2 U=s i ;_1 _;)e l se tl k+=s i j;12m=0;ti(k =o;/*S un

7、d*/f o r(i=0;i k;i+)_ 2 _ _ _ _;/*C un d*/f o r(i=0;i ,d e f 3 5 a d h 3 k j sd f 7;p ri n tf(n T h e o ri g i n a l stri n g i s:%s n,s);f un(s);p ri n tf f A n T h e re sul t i s:%s n,s);)4、给定程序中,函数f i rn 的功能是:有N X N矩阵,以主对角线为对称线,对称元素相加并将结果存放在左下三角元素中,右上三角元素置为0。例如,若N=3,有下列矩阵:1 2 34 5 67 8 9计算结果为1 0

8、06 5 01 0 1 4 9请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANKI.C中。不得增行或删行,也不得更改程序的结构!#i n c l ud e#d e f i n e N 4/*f o u n d*/vo i d f un(i n t(*l)_ _ _ _ 1 _ _ _ _)i n t i,j;f o r(i=l;i N;i+)f o ra=0;j i;j+)(/*f o un d*/-2 _=t i J UJ+tUl i ;/*f o un d*/3一=0:)m a i n()i n t t)N =2 1.1 2,1

9、 3 2 4,2 5.1 6.4 7.3 8,2 9,l l,3 2.5 4.4 2.2 1,3 3,1 0 .i,j;p ri n tf(n T h e o ri g i n a l a rra y:n);f o r(i=0;i N;i+)f o r(j=0;j N;j+)p ri n tf(%2 d ,t i|j );p ri n tf(n*);f un(t);p ri n tf(n T h e re sul t i s:n);f o r(i=0;i N;i+)f o r(j=0;j N;j+)p ri n tf(%2 dp ri n tf(n);)5、给定程序中,函数f u n的功能是:

10、对形参s所指字符串中下标为奇数的字符按A S C I I码大小递增排序,并将排序后下标为奇数的字符取出,存入形参p所指字符数组中,形成个新串。例如,形参s所指的字符串为:b a a wrsk j g h z l i c d a,执行后p所指字符数组中的字符串应为:a a c h j l sWe请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK LC中。不得增行或删行,也不得更改程序的结构!#i n c l ud e vo i d f un(c h a r*s,c h a r*p)i n t i,j,n,x,t;n=0;f o r(i

11、=0:sl i l A O ;i+)n+;f o r(i=l;i n-2;i=i+2)/*心皿(1*/一1一;/*R)un d*/f o r(j=一2+2 ;j s j j)t=j;i f(t!=i)x=s i ;s(i =s t;s t=x;)f o r(i=l j=0;i n;i=i+2,j+)p l j j=s i ;/*b un d*/P l j =_3 _;1m a i n()c h a r s 8 O =b a a wrsk j g h z l i c d a.p(5 O ;p ri n tf(n T h e o ri g i n a l stri n g i s:%s n,s);

12、f un(s,p);p ri n(f(n T h e re sul t i s:%s n.p);)6、程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的信息。函数f u n的功能是输出这位学生的信息。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B LA NK1.C中。不得增行或删行,也不得更改程序的结构!#include typedef struct int num;char naine9:char sex;struct int year,month,day;birthday;float score3;STU;/*found*/

13、void s h o w(S T U _1 _)int i;printf(,n%d%s%c%d-%d-%d ,(t.num.(t.name.tt.sex,tt.birthday.year,tt.birthday.month,tt.birthday.day);for(i=0:i 3;i+)/*fou nd*/printfCS.lf,2 _);prinlf(nH);main()S T U std=l,Zhanghua,:M J 9 6 1.1 0,8,7 6.5,7 8.0,8 2.0 ;printfCAnA student data:n);/*found*/show(_ 3 _);7、给定程序中

14、,函数f u n的功能是:计算N X N矩阵的主对角线元素和反向对角线元素之和,并作为函数值返卬 1。注意:要求先累加主对角线元素中的值,然后累加反向对角线元素中的值。例如,若N=3,有下列矩阵:I 2 34 5 67 8 9 f u n函数首先累加1、5、9,然后累加3、5、7,函数的返回值为3 0。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B LA NK 1.C !,不得增行或删行,也不得更改程序的结构!#include#define N 4fun(int tlN,int n)int i,sum;/*found*/_ 1 _;fo

15、r(i=0;i n;i+)/*found*/s u m+=2 ;fbr(i=O;i n;i+)/*found*/s u m+=tin-i-_3 _;return sum;1main()int tN=2 l 2,1 3,2 4,2 5,1 6 4 7,3 8,2 9 1 1,3 2,5 4,4 2,2 1,3,1 0 jj;printf(nThe original data:nM);for(i=0;i N;i+)for(j=0;j N;j+)printf(,%4 d,ti|j);p r i n t f Oprintf(The result is:%d,fun(t,N);8、给定程序中,函数f u

16、 n的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),作为函数值返回:并将大于平均值的数放在形参y所指数组中,在主函数中输出。例如,有 1 0 个正数:46 3 0 3 2 4 0 6 1 7 4 5 1 5 4 8 26,平均值为:3 0.5 0 0 0 0 0主函数中输出:4 6 3 2 4 0 4 5 4 8请在程序的卜划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B LA NK 1.C中。不得增行或删行,也不得更改程序的结构!#include#include#define N 1 0double fun(double xlJ

17、.double*y)int ij;double av;/*Sund*/a v=_ l _;/*砧 und*5*/for(i=0;i N;i+)av=av+_ 2 _;for(i=j=0;i av)y 1 _ 3 _=xi;y(j=-kreturn av;)main()int i;double xN =4 6,3 0,3 2,4 0,6,1 7,4 5,1 5,4 8,2 6;double yN;for(i=();ivN;i+)printf(M%4.0 f ,xi);printf(n);printf(nThe average is:%An,fun(x,y);for(i=();yi=0;i+)pr

18、intf(v%5.0 f ,yi);printf(n);9、给定程序中,函数f t m的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),将所指数组中小于平均值的数据移至数组的前部,大于等于平均值的数据移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。例如,有 1 0 个正数:4 6 3 0 3 2 4 0 6 1 7 4 5 1 5 4 8 26,平均值为:3 0.5 0 0 0 0 0移动后的输出为:3 0 6 1 7 1 5 2 6 4 6 3 2 4 0 4 5 4 8请在程序的下划线处填入正确的内容并把下划线删除,使程序得出1 E确的结果

19、。注意:源程序存放在考生文件夹下的B LA NK1.C中。不得增行或删行,也不得更改程序的结构!#include#include#define N 1 0double fun(double*x)ini i,j;double av,yN;av=0;/*他und*/for(i=0;i N;i+)av+=_1 _;for(i=j=0;i N;i+)if(xij av)/*Su nd*/yUl=xi:Xi=_l;_2 _;i=0;while(i N)if(xi!=-l)yU+=xi;for(i=0;i N;i+)xil=yhl;return av;)main()int i;double xN;for(

20、i=0;i N;i+)xi=rand()%5 0;printf(%4.0 f ;xi);printf(n);printf(nThe average is:%fn,fun(x);printf(nThe result:n,fun(x);for(i=0;i N;i+)printf(M%5.0 f ,xi);printf(n);1 0、给定程序中,函数f t m的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),将所指数组中大于平均值的数据移至数组的前部,小于等于平均值的数据移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均值和移动后的数据。例如,有 1 0 个正数:4 6

21、 3 0 3 2 4 0 6 1 7 4 5 1 5 4 8 26,平均值为:3 0.5 0 0 0 0 0移动后的输出为:4 6 3 2 4 0 4 5 4 8 3 0 6 1 7 1 5 2 6请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B LA NK1.C中。不得增行或删行,也不得更改程序的结构!#include#include#defineN 1 0double fun(double*x)int i,j;double s,av,yN;s=0;for(i=();ivN;i+)s=s+xi;/*R)und*/a v=_ l _;fo

22、r(i=j=0;i av)/*砧und*/y L _ 2 _ =x i ;xi=-i;|for(i=0;i N;i+)/*他und*/if(xi!=_3 _)yU+=xi;for(i=0;i N;i+)xil=y(i:return av;)main()int i;double xN=4 6,3 0,3 2,4 0,6,1 7,4 5,1 5,4 8,2 6;for(i=0;i N;i+)prinif(%4.0 f ,xi);printf(n);printf(nThe average is:%fn.fun(x);printf(nThe result:n,fun(x);for(i=0;i N;i+

23、)printf(%5.0 f ,x(i);printf(n);1 1、函数fiin的功能是:把形参a所指数组中的奇数按原顺序依次存放到a0、aI、a2、中,把偶数从数组中删除,奇数个数通过函数值返回。例 如:若a所指数组中的数据最初排列为:9、1、4、2、3、6、5、8、7,删除偶数后a所指数组中的数据为:9、1、3、5、7,返回值为的请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B LA NK1.C中。不得增行或删行,也不得更改程序的结构!#include#define N 9int fun(int a,int n)int ij;j=0

24、;for(i=0;i n;i+)/*m(jnd*/if(ai%2=_1一)(/*砧 und*”/=-2一;)/*他und*/return_ 3 _;1main()int bN=9,1 4 2,3,6,5,8,7 ,i,n;printf(nThc original data:n);for(i=0:i N;i+)printf(M%4d ,bi);printf(n);n=fun(b,N);prinlf(nThe number of odd:%d n,n);printf(nThe odd number:n);for(i=0:i n;i+)printf(%4 d,bi);printfC An);)1 2

25、、给定程序中,函数f u n的功能是:求s s所指字符串数组中长度最短的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指变量中。s s所指字符串数组中共有M个字符串,且串长 N.请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B LA NK 1.C !,不得增行或删行,也不得更改程序的结构!#include#include#define M 5#define N 2 0int fun(char(*ss)N,int*n)int i,k=0,len=N;/*found*/for(i=0:i _ 1 _;i+)len=strlen(s

26、si);if(i=0)*n=len;/*foij nd*/if(len _2 _*n)(*n=len;k=i;)/*砧und*/retum(_ 3 _);1main()char ssM N=shanghai,guangzhou,beijing,tianjing,chongqing);int nK i;printfCAnThe original strings are:n);for(i=0;i M;i+)puts(ss(i);k=fun(ss,&n);printftThe length of shortest string is:%dn.n);printf(nThe shortest strin

27、g is:%snM,ssk);1 3、人员的记录由编号和出生年、月、日组成N名人员的数据已在主函数中存入结构体数组std中。函数f t m的功能是:找出指定出生年份的人员,将其数据放在形参k所指的数组中,由主函数输出,同时由函数值返回满足指定条件的人数。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B L A N K 1.C中。不得增行或删行,也不得更改程序的结构!#include#define N 8typedef struct int num;int year,month,day;STU;int fun(STU*std,S T U *

28、k,int year)int i,n=0;for(i=0;iN;i+)/*found*/if(_1_=year)/*fou nd*/kn-H-=_2 _;/*fou nd*/return(_ 3 _);)main()S T U stdN=1,19 8 4.2 J5 h 2,19 8 3,9.2 1 h 3,19 8 4,9.1.4,19 8 3,7,15 ,5,19 8 5.9,2 8 .6,19 8 2,114 5)4 7.19 8 2,6 2 2)4 8.19 8 4,8 J9);S T U k(N;int i,n,year;printf(Enter a j-ear:);scanf(%d,

29、&year);n=fun(std,k.year);if(n=O)printf(nNo person was b o m in%d n,year);else printf(nThese persons were born in%d n,year);for(i=0;in;i+)printf(*%d%d-%d-%dn,ki.num,kij.year,ki.month,ki.day);14、函数f t m的功能是:将形参a所指数组中的前半部分元素中的值和后半部分元素中的值对换。形参n中存放数组中数据的个数,若n为奇数,则中间的元素不动。例如:若a所指数组中的数据依次为:1、2、3、4、5、6、7、8、

30、9,则调换后为:6、7、8、9、5、1、2、3、4。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B L A N K 1.C中。不得增行或删行,也不得更改程序的结构!#include#define N 9void fun(int a,int n)int i,t,p;/*found*/p=(n%2=0)?n/2:n/2+_ 1_;for(i=0;in/2;i+)(t=ai;/*found*/ai=ap+_ 2 _);/*found*/main()int bN=1,2 3,4,5,6,7,8.9 ,i;printf(nThe original

31、 data:n);for(i=0;iN;i+)printf(%4 d=bi);printf(,rn);fun(b,N);printff AnThe data after movin g :n);for(i=0;iN;i+)printf(%4 d ,bi);printfC An);115、给定程序中,函数f u n的功能是将形参给定的字符串、整数、浮点数写到文本文件中,再用字符方式从此文本文件中逐个读入并显示在终端屏幕上。请在程序的下划线处填入iE确的内容并把下划线删除,使程序得出正确崭绸果。注意:源程序存放在考生文件夹下的B L A N K 1.C中。不得增行或删行,也不得更改程序的结构!#i

32、nclude void fun(char*s,int a,double f)/*fou nd*/_ 1 _ fp;char ch;fp=fopen(filel.txt,w):fprintf(fp,0%s%d%An,s,a,f);fclose(fp);fp=fopen(filel.txr,r);printf(nThe result:nn);ch=fgetc(fp);/*fou nd*/while(!feof(_2 _)/*found*/putchar(一3一);ch=fgetc(fp);)putchai(n);fclose(fp);main()char allO=Hellor;int b=12

33、3 4 5;double c=9 8.7 6;fun(a,b,c);116、给定程序中,函数f u n的功能是:找出N X N矩阵中每列元素中的最大值,并按顺序依次存放于形参b所指的一维数组中。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B L A N K 1.C中。不得增行或删行,也不得更改程序的结构!#inciude#define N 4void fun(int(*a)Nl int*b)int ij;for(i=0;iN;i+)/*砧 und*”/b i =_ 1 _;for(j=l;jN;j+)/*他und*/if(bli_2 _

34、aUJiJ)bi=aji;)main()int xNN=12,5,8,7 .6,l,9,3 ,1,2 3 4 ,2,8,4,3 ,yN,iJ;printf(nThe matrix:n);for(i=0;iN;i+)for(j=OJN;j+)printf(%4 d,xij);printf(n,);/*found*/f u n(_ 3 _);printf(nThe result is:);for(i=0;iN;i+)printfC%3 d,yi);printf(n);)17、给定程序中,函数f u n的功能是:统计形参s所指字符串中数字字符出现的次数,并存放在形参t所指的变量中,最后在主函数中输出

35、。例如,形参s所指的字符串为:abcdef3 5 adgh3 kjsdf7e输出结果为:4。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B L A N K 1.C 4 .不得增行或删行,也不得更改程序的结构!#include void fun(char*s,int*t)int i,n;n=0;/*found*/for(i=0;_1_!=0;i+)/*fou nd*/if(si=O&si=_2 _)n+;/*fou nd*/3.main()char s8 0=abcdef3 5 adgh3 kjsdf7 ;int t;printf(nTh

36、e original string is:%sn,s);fun(s,&t);printf(nThe result is:%dn,t);118、函数f u n的功能是:把形参a所指数组中的最小值放在元素a0中,接着把形参a所指数组中的最大值放在al 元素中;再把a所指数组元素中的次小值放在a2 中,把a所指数组元素中的次大值放在a3;其余以此类推。例如:若a所指数组中的数据最初排列为:9、1、4、2、3、6、5、8、7;则按规则移动后,数据排列为:1、9、2、8、3、7、4、6、5。形参n中存放a所指数组中数据的个数。注意:规定f u n函数中的m a x存放当前所找的最大值,p x存放当前所找

37、最大值的下标。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B L A N K 1.C中。不得增行或删行,也不得更改程序的结构!#include#define N 9void fun(int a口,int n)int i,j,max,min,px,pn,t;for(i=0;in-l;i+=2)(/*)und*/m a x =min=_ 1_;px=pn=i;for(j=i+l;jn;j+)/*nd*/if(max_3 _)min=aj;p n=j;)if(pn!=i)t=ai;ai=min;apn=t;if(px=i)px=pn;)if(

38、px!=i+1)t=ai+ll;ai+l=max;apx=t;)main()int bN=9,1,4,2,3,6,5,8,7 ,i;printf(nThe original data An);for(i=0;iN;i+)printf(%4 d,bij);printfCAn);fun(b,N);printf(nThe data after moving:n);for(i=();iN;i+)printf(,%4d ,bi);printf(Ann);19、给定程序中,函数f u n的功能是:将形参s所指字符串中的所有数字字符顺序前移,其他字符顺序后移,处理后新字符串的首地址作为函数值返回。例如,s所

39、指字符串为:asdl2 3 fgh5#4 3 df,处理后新字符串为:I2 3 5 4 3 asdfgh#df请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B L A N K 1.C中。不得增行或删行,也不得更改程序的结构!#include#include#include#include char*fun(char*s)int i,j,k,n;char*p,*t;n=strlen(s)+l;t=(char*)malloc(n*siz eof(char);p=(char*)malloc(n*siz eof(char);j=0;k=0;for

40、(i=0;in;i+)if(isdigit(si)/*nd*/pL_l-J=si;j+;else tk=si;k+;)/*箝 u 前*/for(i=0;i_;i+)pj+il=ti;p U+k =O;/*砧 un(l*/return _3 _;)main()char s8 O;printfC Please input:);scanf(%s,s);printf(nThe result is:%sn,fun(s);12 0、给定程序中,函数f u n的功能是:有N X N矩阵,根据给定的m(m =N)值,将每行元素中的值均右移m个位置,左边置为0。例如,N=3,m=2,有下列矩阵123456789

41、程序执行结果为001004007请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的B L A N K L C中。不得增行或删行,也不得更改程序的结构!#include#define N 4void fun(int(*t)N.int m)int i,j;/*found*/for(i=0;i=0;j-)/*nd*/ti0+2/*lu nd*/for(j=0;j一3;j+)tiUJ=O;I1inain()int lN=2 1,12,13,2 4,2 5,16,4 7,3 8,2 9,11,3 2 5 4,4 2 2 1,3 3,10.i.j.m;p

42、rintf(nThe original arrayAn);for(i=0;iN;i+)for(j=0;jN;j+)printf(%2 dprinlf(n);)printf(Input m (m =%d):N);scanf(%d,&m);fun(t,m):printf(nThe result is:n);for(i=0;iN;i+)for(j=0;jvN;j+)printf(%2 d 频);printf(An);)2 1、函数f u n的功能是:把形参a所指数组中的偶数按原顺序依次存放到a0、al、a2、中,把奇数从数组中删除,偶数个数通过函数值返回。例如:若a所指数组中的数据最初排列为:9、1

43、、4、2、3、6、5、8、7,删除奇数后a所指数组中的数据为:4、2、6、8,返回值为4。请在程序的下划线处填入正确的内容并把下划级删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BL AN K 1.C中。不得增行或删行,也不得更改程序的结构!#include#define N 9int fun(int a.int n)int ij;j=0;for(i=0;i n;i+)/*jund*/if(_1 _=0)/*句und*/_ 2-=a i;j+;)/*jund*/retuni_ 3 _;main()int b N=9 J ,4 2 3,6,5,8,7 ,i,n;printf(nT

44、he original data:n);for(i=0:i N;i+)printfC%4 d,b i);printf(n);n=fun(b,N);printf(nT he number of even:%d n,n);printf(nT he even:n);for(i=0;i n;i+)printf(%4 d ,b i);printfC A n1);)2 2、给定程序中,函数f u n的功能是:判定形参a所指的N XN (规定N为奇数)的矩阵是否是“幻方,若是,函数返回值 为I:不是,函数返回值为0。幻方 的判定条件是:矩阵每行、每列、主对角线及反对角线上元素之和都相等。例如,以下3X3的矩

45、阵就是个“幻方:4 9 23 5 78 1 6请在程序的卜划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BL AN K 1.C中。不得增行或删行,也不得更改程序的结构!#include#define N 3in(fun(int(*a)N)int i j,ml,m2,row,colum;m l=m 2=0;for(i=0;i N;i+)j=N-i-l;ml+=a i il;m2+=a i j;if(ml!=m2)return 0;for(i=0;i N;i+)/*伯und*/r o w=c o l u m=_ 1;for(j=0;j N;j+)(row

46、+=a i j);colum+=a(j i;)/*砧und*/if(row!=colum)_2 _(r o w!=m l)return 0;I/*砧u nd*/return _3 _;main()int x N N,ij;printf(E nter number for array:n);for(i=0:i N;i+)for(j=0;j N;j+)scanf(%d,&x i j);prinlf(A iray:n);for(i=0:i N;i+)for(j=0;j N;j+)primf(%3 d,x iU D;printfC V);)if(fun(x)printf(T he A rray is

47、a magic squareA n);else printf(T he A rray isnt a magic square A n);12 3、给定程序中,函数f u n的功能是符a和b所指的两个字符串分别转换成面值相同的整数,并进行相加作为函数值返回,规定字符串中只含9个以下数字字符。例如,主函数中输入字符串:3 2 4 8 6和1 2 3 4 5,在主函数中输出的函数值为:4 4 8 3 k请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果.注意:源程序存放在考生文件夹下的BL AN K L C中。不得增行或删行,也不得更改程序的结构!#include#include#

48、include#define N 9long ctod(char*s)long d=0:while(*s)if(isdigit(*s)/*found*/d=d*1 0+*s-1 _;/*Sun(j*/2_;return d;long fun(char*a,char*b)(/*他und*/return _3 _;main()char sl N,s2 NJ;do printf(I nput string si:gets(sl);while(strlen(sl)N):do printf(I nput string s2 :gets(s2);while(strlen(s2)N);printf(T he

49、 result is:%ld n,fun(sl,s2);)2 4、给定程序中,函 数f u n的功能是:把形参s所指字符串中下标为奇数的字符右移到下一个奇数位置,最右边被移出字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动(注:字符串的长度大于等于2)。例如,形参s所指的字符串为:abcdefgh,执行结果为:ahcbedgf。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BL AN K 1.C中。不得增行或删行,也不得更改程序的结构!#include void fun(char*s)int i,n,k;char c:n=0:fo

50、r(i=0;s i!=0;i+)n+;/*bu nd*/if(n%2=0)k=n-_1 _;else k=n-2;/*C und*/c=_2 _;for(i=k-2;i=l;i=i-2)s i+2=s il;/*心 un(j*/s l=_3;)main()char s 8 0=abcdefgh;printf(nT he original string is:%s n,s);fun(s);printf(nT he result is:%s n,s);2 5、给定程序中,函数ftin的功能是:求出形参s s所指字符半数组中最长字符中的长度,将其余字符串右边用字符*补齐,使其与最长的字符串等长。ss

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁