2022年安徽省宣城市全国计算机等级考试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)
《2022年安徽省宣城市全国计算机等级考试C语言程序设计真题(含答案).docx》由会员分享,可在线阅读,更多相关《2022年安徽省宣城市全国计算机等级考试C语言程序设计真题(含答案).docx(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2022年安徽省宣城市全国计算机等级考试C语言程序设计真题(含答案)学校:班级:姓名:考号:一、2.填空题(10题)1 .已有定义:double *p;,请写出完整的语句,利用malloc函数使p指 向一个双精度型的动态存储单元。2 .下面程序中的数组a包括10个整数元素,从a中第二个元素起,分 别将后项减前项之差存入数组b,并按每行4个元素输出数组b,请填 空。main() inta10, b10, i ; for(i=0 ;i 10 ;i+) scanf(%d, &ai); for(i=l ; i 10 ; i+) ( ) ; for(i=0 ; i 9 ; i+) printf(%d,
2、bi); if(i%4=0)printf(n);)3 .程序测试分为静态分析和动态测试。其中【】是指不执行程序,而 只是对程序文本进行检查,通过阅读和讨论,分析和发现程序中的错误。4 .若有以下定义语句,则不移动指针P,并且通过指针p引用值为98 的数组元素的表达式是】。intw10=23, 54, 10, 33, 47, 98, 72, 80, 61), *p=w ;5 .以下程序运行后的输出结果是23 .规定输入的字符串中只包含字母和+号。编写函数fun,其功能是:除了字符串前导和 尾部的母号外,将其他的*号全部删除。形参h己指向字符串中第一个字母,形参P指向字 符串中最后一个字母。在编写
3、函数时,不得使用c语言提供的字符串函数。例如.若字符串中的内容为“”A,BCDE,删除后,字符串中的内容应当是“ABCDEFG注童:部分源程序给出如下。诂勿改动主函数main和其他函数中的任何内容.仅在函数.的花括号中埴入你编到的若干语句 试埋程序:?#indudevoid fun(char *a,char hxlur p)I.,.main(). char481K%f; printf(,Enter a 被rin&VT);g(s);t=f=s;whileCt)t+:t;1一:while(*t=1*)1一;while(*f=1*1)f+;fun(m;printf(*The string after
4、 deleted:、); puts(ft);J.24 .请编写函数proc (),它的功能是:求出11000中能被5或13整除, 但不能同时被5和13整除的所有整数,并将它们放在arr所指的数组 中,通过n返回这些数。注意:部分源程序给H如下。请勿改动main 0函数和其他函数中的任何内容,仅在函数proc ()的花括号中填入# include Vconio. h include Vxidio. hU include l void proc(ini * arr.int * n) void main()(int arr( 1000J n ktsystcmC CLSM)proc(arr. 6-n)
5、;for(k-Oiknik+ + )if(k+l)%10-0)print(M %5d .jirrk_);printf(Mn M)i 一行写 10 个数 f elseprint%5d *tarrk)i ,25.使用VC +2010打开考生文件夹下progl中的解决方案。此解决方 案的项目中包含一个源程序文件progl.c。在此程序中,编写函数fun(), 其功能是实现B=A+A即将矩阵A加上A的转置,结果存放在矩阵 B中。计算结果在main()函数中输出。举例如下。输入如下的矩阵:其转置矩阵如下:123147456258789369程序输出:261061014101418注意:部分源程序给出如下
6、。请勿改动主函数main。和其他函数中的 任何内容,仅在函数fun()的花括号中填入你编写的若干语句。试题程序:#include #include #include void fun (int a33, int b33) ()void main () (int a33=l,2,3,4,5,6,7,8,9,t33;int i, j;system(“CLS”); fun (a, t);for (i=0;i3;i+) (for(j=0;j 3;j +)printfC6% 7dtij);printf (rT); )26.使用VC+2010打开考生文件夹下progl中的解决方案。此解决方 案的项目中包含
7、一个源程序文件progl.c。在此程序中,编写一个函 数,其功能是从传入的num个字符串中找出最长的一个字符串,并通 过形参指针max传回该字符串的地址(用*作为结束输入的标识)。 注意:部分源程序在文件progl.c中。请勿改动主函数main()和其他函数 中的任何内容,仅在函数fun()的花括号中填入你编写的若干语句。 试题程序:1 #include 2 #include 3 #include 4 #include 5 char * fun (char ( * a) 81, int num, char * max)6(78 )9 void main ()10 11 FILE * wf;12
8、 char ss 10 81 , * ps =NULL;13 char s3 81 = n abedn, ndegn, ndiegnsn), *p=NULL;14 int i = 0 , n;15 system(nCLSn);16printf(输入若干个字符串:”);17gets(ssi);18 puts (ssi);19 while (! stremp (ss i ,* ”)=o)/*用4个星号作为结束输入的标志*/20 21 i+;22 gets (ssi);24 puts (ssi);25)26 n = i;27 ps=fun(ss,n,ps);28 printf (nnmax = %s
9、nn,ps);*1* *1 kL* 4*1 vl*kL* *1* /J 11 /-J-/30 wf = fopen (out .dat, w);31 p = fun (s,3,p);32fprintf(wf,% s,p);33 fclose (wf);A /1* *1 si* *1*/4 / I /27.请编写函数proc (),其功能是:将str所指字符串中除了下标为奇数、 同时ASCII值为偶数的字符外,其余的全部删除,串中剩余字符所形成 的一个新串放在t所指的数组中。例如,若str所指字符串中的内容为 edB2A4Dsdg,其中字符A的ASCII码值为奇数,因此应当删除;其中 字符B的A
10、SCH码值为偶数,但在数组中的下标为偶数,因此也应当 删除;而字符2的ASCH码值为偶数,所在数组中的下标为奇数,因此 不应当删除。依此类推,最后t所指的数组中的内容应是d24。注意: 部分源程序给出如下。请勿改动main ()函数和其他函数中的任何内 容,仅在函数proc ()的花括号中填入所编写的若干语句。试题程序: 。tndvde Va&h 修 include Vcomo. h 9 include b9 mclude Vanng. hraid prwchar 7r. char 1口)to id tMtn() (char ttr 100 t100 tpcintfBnPlew enter a
11、iring Stw)ipcoc(arOi print(renuli28.编写函数fun,其功能是:将s所指字符串中除了下标为奇数,同时 ASCH码值也为奇数自q字符之外。其余所有字符全部删除,串中剩余字符所形成的一个新串放在所指的数 组中。例如,若s所指字符串的内容为“ABCDEFG12345,其中字符A的ASCII 码值为奇数,但所在元素的下标为偶数,因此需要删除;而字符1的ASCII码值为奇数,所在数组 中的下标也为奇数,因此不应当删除,其他依此类推。最后t所指数组中的内容应为“135”。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括 号中填入
12、你编写的若干语句。试题程序:# nclude#i ncludev“id fun(char*s,char t D ()main()(char s(100,t(100;printfCXnPlease enter string s:rt);printf(nmie result is:%snt);I29.请编写函数proc,其功能是:将str所指字符串中除下标为偶数、 同时ASCH码值为奇数的字符外,其余的字符都删除,串中剩余字符 所形成的一个新串放在t所指的数组中。例如,若str所指字符串中的 内容为ABCDEFG12345,其中字符B的ASCH码值为偶数,所在元素 的下标为奇数,因此必须删除;而字
13、符A的ASCII码值为奇数,所在 数组中的下标为偶数,因此不应当删除。依此类推,最后t所指的数 组中的内容应是ACEG。注意:部分源程序给出如下。请勿改动main函数和其他函数中的任何内容,仅在函数proc的花括号中填人所写的若干语句。试题程序:#include<stdlib. h>#include<conio h>#include<stdio - h>#include<string. h>void proc(char*str, char t)()void main(char str100, t100;system(CLS);printf(nnP
14、lease enter string str:);scanf(%S, str);proc(str, t);printf(nThe result iS: %sn, t);30 .规定输入的字符串中只包含字母和。号。请编写函数fun,其功能是:将字符串尾部的。号全部删除,前面和中间的*号不动。例如,字符中中的内容为 A BC DEF C 2*除后,字符串中的内容应当 是广 ABCDEFC在编写函数时.不利使用C语言提供的字符串函数。注意:部分源程序在文件PR0G1.C中。.请勿改动主函数main和犬他函数中的任何内容.仅在函数fun的花括号中填入你编写的若干语句。tinclude void fun
15、( char * a ) main()I char s81nxid NONO(); printf( M Enter a string: nw ) ;get(s); e wiring after deleted: nM ) ;puU(s);NONO( ) I.void NONO()|/本函数用于打开文件,输入数据,利用函数.输出数据,关闭文件。/FILE in, oul ;ini i ; char s 81 ;in = fopen(Bin. daX-.wr*);out = fopen(Nout. dalH .*);for(i = 0 ; i 10 ; i )I(9cmt( int %sMt s)
16、;fpnntf(outvs);I,fck)9e( in); fclme(out);四、2.程序修改题(10题)31 .给定程序MOD11 . C中函数fun的功能是:从低位开始取出长整型 变量s中奇数位上的数,依次构成一个新数放在1中。高位仍在高位, 低位仍在低位。例如,当S中的数为:7654321时,t中的数为:753lo请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!include 23456789/found/ void fun (long s, long t) long sl-10;*t s % 10;while (s 0)
17、s s/100;*t - s%10 * si + *t;/found/101112131415161718si sl*100;) main (). long s, t;printf(MnPlease scanf(n%ldR/ &s);enter s:);fun (sr &t);printf (The result is: %ldnwr t);32.下列给定的程序中,函数fun()的功能是:判断字符ch是否与str所 指字符串中的某个字符相同;若相同,则什么也不做,若相同,则将其 插在申的最后。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的
18、结构。试题程序:#include #include #include /7,1/不不不不不不不不不不不不小tciind不不不个个小不不个个个不不不/void fun (char str,char ch)while (*str &*str !=ch) str+;/ vL* vL*kL*kL1 vl* vL* vL*vl*/不不不不不不不不不不不不不tciinrl不不不不不不不不不不不不不不/if(*str=ch) str0=ch;/vr# kL* vt* vt* kL* kL*1vt* kL* vt*vL* /不不不不不不不不不不不不不tciind不不不不不不不不不不不不、不/ strl=V;)
19、 main() char s81,c; clrscr();printf(unPlease enter a strzng : ); gets(s);printf(nn Please enter the character to search :c=getchar();fun(s,c);printf(unThe result is %snn,s);)33.给定程序中,函数fun()的功能是:使数组中的元素的值增加10倍。改正其中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构.试题程序:#include #include ihtm10;void fun
20、(void) intj;printf(uIn subfunc after callingll);for(j=0;j 1k1/不不不不不不不不不不不不,ci me不不不不不不不不不不不不不不不不不不不不不不/printf(n%3dn,mj*10);)main()main() int a,b,c;a = 25;b = 025;c= 0x25;printf(n%d %d %dn”,a,b,C);)6 .下程序的输出是【】。main() (char strl=nHow do you donpl=strl;strcpy(strl +strlen(strl)/2,nes she);printf(n%snu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 安徽省 宣城市 全国 计算机等级考试 语言程序设计 答案
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内