国家二级C语言程序设计机试(程序修改题)模拟试卷3.docx
《国家二级C语言程序设计机试(程序修改题)模拟试卷3.docx》由会员分享,可在线阅读,更多相关《国家二级C语言程序设计机试(程序修改题)模拟试卷3.docx(2页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、国家二级C语言程序设计机试(程序修改题)模拟试卷3(总分:8. 00,做题时间:90分钟)一、程序修改题(总题数:4,分数:8. 00)L下列给定程序中,函数fun的功能是:读入一个字符串(长度20),将该字符串中的所有字符按ASCH 码值升序排序后输出。例如,若输入“edcba,则应输出“abode”。请改正程序中的错误,使它能得 出正确的结果注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!试题程序: #include#includevoid fun(ehar t) char c; int i, j; / *foirnd* / for (i=strlen(t) ; i; i
2、) for (j=0; ji; j+) / *f()und* /if (tj0; i)解析:解析:(1)本题是利用选择法对数组元素进行比较排序。所谓选择法,是依次用当前取得的元素和 其后面的元素进行比较,在第一个元素和其后面的元素顺次比较时,可以借助中间变量来对两个数进行交 换,要保证第一个元素始终存放数组中的最大数,以后依次挑选出次大数,这样最终的数组就是有序的。 strlen函数所求得的字符串长度包括字符串结束符,所以要减1。 (2)这里是一个分析逻辑错误,题中要 求按升序排序,所以应改为.下列给定程序中,函数fun的功能是:删除指针P所指字符串中的所有空白字符(包括制表符、回车符 及换行
3、符)。输入字符串时用结束输入。请改正程序中的错误,使它能输出正确的结果。注意:不得增 行或删行,也不得更改程序的结构!试题程序:#include#includettincludefun(char*P) int i, t; char c80; / *founcl* / For (i=0, t=0; Pi ; i+) if (! isspace(* (P+i) ct+=Pi ; / *fourid* / ct=0 ; strepy (p, c); main() char c, s80; int i=0; prinff( Input a string: ); c=getchar(); while(c
4、!=) si=c; i+; c=getehar() ; 8i= 0 ; fun(s) ; puts(s) ; (分数:2.00) 正确答案:(正确答案:(l)for(i=0, t=0; pi; i+)c田八O;)解析:解析:本题考查:c语言关键字;字符串结束标识0。该题目考查C语言关键字的书写,C语 言中关键字是区分大小写的。另外为字符串结尾添加结束符时应书写为0,而非“ 0,0表示 一个字符串。该程序的if条件中应用了 isspace函数,该函数的功能是检查ch是否空格、跳格符(制表 符)或换行符。2 .下列给定程序中,函数fun的功能是:将m(lWmW10)个字符串连接起来,组成一个新串,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 国家 二级 语言程序设计 程序 修改 模拟 试卷
限制150内