2023年河南省平顶山市全国计算机等级考试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)
《2023年河南省平顶山市全国计算机等级考试C语言程序设计模拟考试(含答案).docx》由会员分享,可在线阅读,更多相关《2023年河南省平顶山市全国计算机等级考试C语言程序设计模拟考试(含答案).docx(42页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2023年河南省平顶山市全国计算机等级考 试C语言程序设计模拟考试(含答案) 学校:班级:姓名:考号:一、2.填空题(10题)1 .执行以下程序后的输出结果是【】。main() int a=10;a=(3*5,a+4); printf(”a=%drT,a); )2 .若有如下定义,则该数组的第一维大小为【 intb4=l,2,3,4,5,6,7,8,9);3 .下列程序的输出结果是【】。main() int a=l, b=2 ;a = a+b;b = a-b, a = a-b;printf(%d, %dn, a, b); )4 .当调用函数时,实参是一个数组名,则向函数传递的是】。5 .算法复
2、杂度主要包括时间复杂度和【】复杂度。6 .以下程序的输出结果是【】。请勿改动主函数main()和其他函数中的任何内容,仅在函数fun()的花括号中填入你编写的若干语句。试题程序:#include #include #include #include float fun(int n)()void main ()(int n;float s;system(“CLS”);printf (nPlease enter N:); scanf (%d&n);s=fun(n);printfCThe result is:%fn s);25 .使用VC +2010打开考生文件夹下progl中的解决方案。此解决方
3、案的项目中包含一个源程序文件progl.c。在此程序中,编写函数fun(), 其功能是将s所指字符串中除了下标为奇数同时ASCII值也为奇数的字 符之外的其余所有字符全部删除,字符串中剩余字符所形成的一个新字 符串存放在t所指的数组中。例如,若s所指字符串的内容为“ABCDEFG12345,其中字符A的 ASCII值为奇数,但所在元素的下标为偶数,因此需要删除;而字符1的ASCII值为奇数,所在数组中的下标也为奇数,因此不应当删除,其他依此类推。最后t所指数组中的内容应为“135”。注意:部分源程序给出如下。请勿改动主函数main()和其他函数中的任何内容,仅在函数fun()的花括号中填入你编
4、写的若干语句。试题程序:#include #include #include void fun (char * s, char t)()main()(char s 100 ,t 100;printf (CnPlease enter string s:);scanf (%s”, s);fun(s, t);printf CnThe result is:% sn,t);26 .假定输入的字符串中只包含字母和*号。请编写函数proc (),它的功能 是:将字符串中的前导*号全部删除,中间和后面的*号不删除。例如, 若字符串中的内容为*a*bc*def*g*,删除后,字符串中的内容则 应当是a*bc*d
5、ef*g*。注意:部分源程序给出如下。请勿改动main0函数和其他函数中的任何内容,仅在函数proc ()的花括号中填入 所编写的若干语句。试题程序:F rxicludc OldnS Micludr Vconoo* h raid proc void fwm( Ipritid * Enter gefMstprocipruitft- The Rnn aiitr deletedtn*)i outF(tr)sI27 .使用VC+2010打开考生文件夹下progl中的解决方案。此解决方案 的项目中包含一个源程序文件progl.c。在此程序中,学生的记录由学号 和成绩组成,N名学生的记录已放入主函数的结构
6、体数组s中。请编写 函数fun(),其功能是把指定分数范围内的学生记录存放在b所指的数 组中,分数范围内的学生人数由函数值返回。如输入的分数是60、69,则应当把分数在6069的学生记录输出,包 含60分和69分的学生记录。主函数中把60放在low中,把69放在 high 中。注意:部分源程序给出如下。请勿改动主函数main()和其他函数中的任何内容,仅在函数fun()的花 括号中填入你编写的若干语句。试题程序:#include #define N 16 typedef structchar num10;int s;STREC;int fun (STREC * a, STREC * b, in
7、t 1, int h )void main ()(STREC sN=GA005”, 85,“GA003”,76 ,“GA002”,69 ,“GA004”,85,“GA001:96,“GA007”,72,“GA008”,64,“GA006”,87,“GA015”,85,“GA013194 , “GAO 12”,64 , “GAO 14”,91, “GAO 11 ”,90, “GAO 17”,64, “GAO18”,64,“GA016,72;STREC hN;int i, n, low, high, t;printf (Enter 2 integer number low & high:);sca
8、nf (%d%d,&low, &high);if (high low)t=high;high=low;low=t;n=fun(s,hjow, high);printf (The students data between %d%d: n,low, high);for(i=0;i= p=printf (%s %4dn hi.num9 hi.s);printf (“n”);28 .假定输入的字符串中只包含字母和*号。请编写函数proc (),它的功 能是:除了尾部的*号之外,将字符串中其他*号全部删除。形参P已指 向字符串中最后一个字母。在编写函数时,不得使用C语言的字符串函 数。例如,若字符串中
9、的内容为*a*bc*def*g*,删除后,字符串 中的内容应当是abcdefg*。注意:部分源程序给出如下。请勿改动main ()函数和其他函数中的任何内容,仅在函数proc ()的花括号中填人所编写的若干语句。试题程序:=tneludr Vcookk IO $ include g,d proc4 char Mr .char p)void fMin( char itpniM(Enter ntnngA* *i grt( mf) 1 9 mrswhle4 l) + .1 -*l 指科tfli向字样串总。 wh4( , )t一-希忖1指陶灯一个字母pfocrinrf( wThe Mnng after
10、 dHefedgXn*)i pjtsi(str) t29.学生的记录由学号和成绩组成,M名学生的数据已在主函数中放 人结构体数组stu中,请编写函数proc,它的功能是:把指定分数范围 之外的学生数据放在b所指的数组中,分数范围之外的学生人数由函 数值返回。例如,输入的分数是70和79,则应当把分数低于70和高于79的学生 数据输出,不包含70分和79分的学生数据。主函数中把70放在low 中,把79放在heigh中。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数proc的花括 号中填人所编写的若干语句。试题程序:#include#define M 16 typ
11、edef struct (char num10;int s:STREC;int proc(STREC*a, STREC*b, int 1, int h)()void main(STREC stuM=nGA005n, 55), nGA003% 96,“GA002”,80), nGA004%68),nGA001%88), nGA007% 74),nGA008% 85),nGA006% 89,“GAO 15,90),nGA012% 66),“GA013”,53),GA014”, 82),nGA0Hn, 73,nGA017% 69),nGA018% 64),“GA016”,86;STREC hM;in
12、ti, n, low, heigh, t;printf(nEnter 2 integer number low& heigh: );scanf(%d%d, &low, &heigh); if(heighlow) 5t=heigh:heigh=low;low=t; )n=proc(stu, h, low, heigh); printf(The students data out %d%d: n, low, heigh);for(i=0; in; i+)printf( %S%4d n, hi. num, hi. s);/输出指定分数范围内的学生记录printf( n); )30.使用VC +201
13、0打开考生文件夹下progl中的解决方案。此解决方 案的项目中包含一个源程序文件progl.c。在此程序中,学生的记录由学 号和成绩组成,N名学生的记录已在主函数中放入结构体数组s中,请 编写函数fun(),其功能是把低于平均分的学生记录放入b所指的数组 中,低于平均分的学生人数通过形参n返回,平均分通过函数值返回。 注意:部分源程序给出如下。请勿改动主函数main()和其他函数中的任何内容,仅在函数fun()的花 括号中填入你编写的若干语句。试题程序:#include #define N 8typedef struct(char num 10 ;double s;STREC;double f
14、un (STREC * a, STREC * b, int *n)()void main ()(STREC sN= “GA05”,85,广GA0376, “GA02”,69, “GA04”, 85, “GAO 1 91,广GA07172, “GA08:64, FgA0687;STREC hN;int i, n;double ave;ave=fun(s,h,&n);printfThe %d student data which is lower than %7.3f:n n5ave);for (i=0;in;i+) p=nnx/n;i+)/*输出成绩低于平均分的学生记录*/printf(%s %
15、4.1fn, hi.num,hi.s);printf (“rT);)四、2.程序修改题(10题)31.下列给定程序中,函数fun()的功能是找出100n(n不大于1000)之 间百位数字加十位数字等于个位数字的所有整数,把这些整数放在s所 指的数组中,个数作为函数值返回。请改正程序中的错误,使它能得到正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:#include #define N 100int fun(int *s, int n)inti, j, k, a, b, c ;k0;for(i=100 ; i st* *i/个个不不不不不不不不不不不ci n
16、不不不不不不不不不个不/k=n ;a=k%10 ;k/=10 ;b=k%10 ;c=V10 ;if(a=b+c)/ 7 7 7* 7* 7* 7 7* 7 7* 7*。1 7 777 7 7,/不小不个不不不小不不不不ci me不不不个不不不不不.sj=i ;)return j ;)main()(int aN, n, num=0, i ;do(printf(nnEnter n( 1000);num=fun(a, n);printf(nnThe result : rT);for(i=0 ; i num ; i+)printf(%5d, ai);printf(nnnn);32 .给定程序M0D11
17、 . C中函数fun的功能是:计算小于形参k的最大 的10个能被13或17整除的自然数之和。k的值由主函数传入,若k的 值为500,则函数值为4622。请改正程序中的错误,使程序能输出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!1 23 45 67tinclude int fun(int k) int m-0r mc-0 ;while (k 2) & (me 10)891011121314151617 k; mc+;)return m;,foundmain ()printf (,%dnwr fun (500); )if (k%13 -0)| (k%17 = 0
18、)33 .下列给定程序中,函数fun()的功能是:根据以下公式求n的值,并作为函数值返回。例如,给指定精度的变量eps输入。.0。5时,应当输 出 Pi=3.140578o#define MAX(x,y) (x)(y)?(x):(y) main() int a=5,b=2,c=3,d=3,t;t=MAX(a+b,e+d)*10;printf(H%dnn,t); )7 .下面定义的结构体类型包含3个成员,其中成员变量x用来存入整 型数据,成员变量y用来存入实型数据,成员变量next是指向自身结构 体的指针。请将定义补充完整。struct stuint x ;next ; 8 .下列程序的输出结果
19、是16 . 00,请填空: main()(int a=9, b=2 ;float x= ,y=l , 1, z ;z=a/2+b*x/y+l/2 ;printf(%5.2fn,z); )9 .数据结构分为逻辑结构和存储结构,循环队列属于 结构。10 .有以下程序n/2=l+l/3+l/3*2/5+l/3*2/5*3/7+l/3*2/5*3/7*4/9请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:#include#include#includedouble fun(double eps) double s,t; int n=
20、t;s=0.0;t二l;/kJ eps) s+=t;t=t*n/(2*n+l);n+;)/ */不不不不不不不不不不不不不ci不不不不不不不不不不不,return (s);)main() double x;printf(nnPlease enter a precision: ”);scanf(n%lf&x);printf(nnPi=%lfn n9fun(x);)34 .下列给定程序中函数fun()的功能是计算1/n!的值。例如:给n输入5则输出0.0083330请改正程序中的错误,使它能得到正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:#include
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 河南省 平顶山市 全国 计算机等级考试 语言程序设计 模拟考试 答案
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内