【计算机类职业资格】全国计算机等级考试二级C语言操作题16+2016年及答案解析.doc

上传人:eastlab115 文档编号:1329668 上传时间:2019-10-17 格式:DOC 页数:2 大小:31.50KB
下载 相关 举报
【计算机类职业资格】全国计算机等级考试二级C语言操作题16+2016年及答案解析.doc_第1页
第1页 / 共2页
【计算机类职业资格】全国计算机等级考试二级C语言操作题16+2016年及答案解析.doc_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

1、全国计算机等级考试二级 C 语言操作题 16+2016 年及答案解析(总分:30.00,做题时间:90 分钟)1.给定程序中,函数 fun 的功能是:求出形参 ss 所指字符串数组中最长字符串的长度,将其余字符串右边用字符*补齐,使其与最长的字符串等长。ss 所指字符串数组中共有 M 个字符串,且串长。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C 中。不得增行或删行,也不得更改程序的结构! 给定源程序: #include #include #define M 5 #define N 20 void fun(char

2、(*ss)N) int i, j, n, len=0; for(i=0; i len=strlen(ssi); if(i=0) n=len; if(lenn)n=len; for(i=0; i /*found*/ n=strlen(_1_); for(j=0; j /*found*/ ssi _2_=*; /*found*/ ssin+j+ _3_=/0; main() char ssMN=“shanghai“,“guangzhou“,“beijing“,“tianjing“,“cchongqing“; int i; printf(“The original strings are :/n“)

3、; for(i=0; i printf(“/n“); fun(ss); printf(“The result is :/n“); for(i=0; i (分数:10.00)_2.给定程序 MODI1.C 中 fun 函数的功能是:将 p 所指字符串中每个单词的最后一个字母改成大写。(这里的“单词”是指由空格隔开的字符串)。 例如, 若输入 “I am a student to take the examination.“, 则应输出 “I aM A studenT tO takE thE examination.“。 请修改程序中的错误之处, 使它能得出正确的结果。 注意: 不要改动 main

4、 函数, 不得删行, 也不得更改程序的结构! 给定源程序: #include #include void fun( char *p ) int k = 0; for( ; *p; p+ ) if( k ) /*found*/ if( p = ) k = 0; /*found*/ * (p-1) = toupper( *( p - 1 ) ) else k = 1; main() char chrstr64; int d ; printf( “/nPlease enter an English sentence within 63 letters: “); gets(chrstr); d=str

5、len(chrstr) ; chrstrd = ; chrstrd+1 = 0 ; printf(“/n/nBefore changing:/n %s“, chrstr); fun(chrstr); printf(“/nAfter changing:/n %s“, chrstr); (分数:10.00)_3.请编写函数 fun, 对长度为 7 个字符的字符串, 除首、尾字符外,将其余 5 个字符按 ASCII 码降序排列。例如,原来的字符串为 CEAedca,排序后输出为 CedcEAa 。 注意: 部分源程序在文件 PROG1.C 中。 请勿改动主函数 main 和其它函数中的任何内容, 仅

6、在函数 fun 的花括号中填入你编写的若干语句。 给定源程序: #include #include #include int fun(char *s,int num) main() char s10; printf(“输入 7 个字符的字符串:“); gets(s); fun(s,7); printf(“/n%s“,s); NONO(); (分数:10.00)_全国计算机等级考试二级 C 语言操作题 16+2016 年答案解析(总分:30.00,做题时间:90 分钟)1.给定程序中,函数 fun 的功能是:求出形参 ss 所指字符串数组中最长字符串的长度,将其余字符串右边用字符*补齐,使其与最

7、长的字符串等长。ss 所指字符串数组中共有 M 个字符串,且串长。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C 中。不得增行或删行,也不得更改程序的结构! 给定源程序: #include #include #define M 5 #define N 20 void fun(char (*ss)N) int i, j, n, len=0; for(i=0; i len=strlen(ssi); if(i=0) n=len; if(lenn)n=len; for(i=0; i /*found*/ n=strlen(_1_

8、); for(j=0; j /*found*/ ssi _2_=*; /*found*/ ssin+j+ _3_=/0; main() char ssMN=“shanghai“,“guangzhou“,“beijing“,“tianjing“,“cchongqing“; int i; printf(“The original strings are :/n“); for(i=0; i printf(“/n“); fun(ss); printf(“The result is :/n“); for(i=0; i (分数:10.00)_正确答案:()解析:解题思路: 第一处:利用 for 循环语句取

9、当前字符串的长度,所以应填:ssi。 第二处:在字符串的右边填字符*,其开始位置是 n+j,其中 n 是该字符串本身的长度,j 是循环控制变量,所以应填:n+j。 第三处:字符串处理结束应置字符串结束符,其位置是 n+j+1,所以应填:1。2.给定程序 MODI1.C 中 fun 函数的功能是:将 p 所指字符串中每个单词的最后一个字母改成大写。(这里的“单词”是指由空格隔开的字符串)。 例如, 若输入 “I am a student to take the examination.“, 则应输出 “I aM A studenT tO takE thE examination.“。 请修改程序

10、中的错误之处, 使它能得出正确的结果。 注意: 不要改动 main 函数, 不得删行, 也不得更改程序的结构! 给定源程序: #include #include void fun( char *p ) int k = 0; for( ; *p; p+ ) if( k ) /*found*/ if( p = ) k = 0; /*found*/ * (p-1) = toupper( *( p - 1 ) ) else k = 1; main() char chrstr64; int d ; printf( “/nPlease enter an English sentence within 63

11、 letters: “); gets(chrstr); d=strlen(chrstr) ; chrstrd = ; chrstrd+1 = 0 ; printf(“/n/nBefore changing:/n %s“, chrstr); fun(chrstr); printf(“/nAfter changing:/n %s“, chrstr); (分数:10.00)_正确答案:()解析:解题思路: 第一处:关键字 int 错写成 INT。 第二处:该行括号没有配对,所以只要加上一个右括号即可。3.请编写函数 fun, 对长度为 7 个字符的字符串, 除首、尾字符外,将其余 5 个字符按 AS

12、CII 码降序排列。例如,原来的字符串为 CEAedca,排序后输出为 CedcEAa 。 注意: 部分源程序在文件 PROG1.C 中。 请勿改动主函数 main 和其它函数中的任何内容, 仅在函数 fun 的花括号中填入你编写的若干语句。 给定源程序: #include #include #include int fun(char *s,int num) main() char s10; printf(“输入 7 个字符的字符串:“); gets(s); fun(s,7); printf(“/n%s“,s); NONO(); (分数:10.00)_正确答案:(int fun(char *s,int num) char ch ; int i, j ; for(i = 1 ; i 6 ; i+) for(j = i + 1 ; j 6 ; j+) if(*(s + i) *(s + j) ch = *(s + j) ; *(s + j) = *(s +i) ; *(s + i) = ch ; )解析:解题思路: 本题是考察考生如何对字符串中的字符按降序进行排序。给出的程序是使用双重 for循环以及冒泡法进行排序的,结果仍存放在原先的字符串上。

展开阅读全文
相关资源
猜你喜欢
  • ITU-T N 55 SPANISH-1993 Organization Responsibilities and Functions of Control and Sub-control International Television Centres and Control and Sub-control Stations for InternationC.pdf ITU-T N 55 SPANISH-1993 Organization Responsibilities and Functions of Control and Sub-control International Television Centres and Control and Sub-control Stations for InternationC.pdf
  • ITU-T N 55-1993 Organization Responsibilities and Functions of Control and Subcontrol International Television Centres and Control and Subcontrol Stations for International Televise.pdf ITU-T N 55-1993 Organization Responsibilities and Functions of Control and Subcontrol International Television Centres and Control and Subcontrol Stations for International Televise.pdf
  • ITU-T N 60 FRENCH-1993 Nominal Amplitude of Video Signals at Video Interconnection Points《视频信号在视频互联点的名义振幅 国际播音节目及电视传输电路的维护(4号研究组)6pp》.pdf ITU-T N 60 FRENCH-1993 Nominal Amplitude of Video Signals at Video Interconnection Points《视频信号在视频互联点的名义振幅 国际播音节目及电视传输电路的维护(4号研究组)6pp》.pdf
  • ITU-T N 60 SPANISH-1993 Nominal Amplitude of Video Signals at Video Interconnection Points《视频信号在视频互联点的名义振幅 国际播音节目及电视传输电路的维护(4号研究组)6pp》.pdf ITU-T N 60 SPANISH-1993 Nominal Amplitude of Video Signals at Video Interconnection Points《视频信号在视频互联点的名义振幅 国际播音节目及电视传输电路的维护(4号研究组)6pp》.pdf
  • ITU-T N 60-1993 Nominal Amplitude of Video Signals at Video Interconnection Points - Maintenance of International Sound- Programme and Television Transmission Circuits (Study Group.pdf ITU-T N 60-1993 Nominal Amplitude of Video Signals at Video Interconnection Points - Maintenance of International Sound- Programme and Television Transmission Circuits (Study Group.pdf
  • ITU-T N 61 FRENCH-1988 Measurements to Be Made Before the Line-up Period That Precedes a Television Transmission《在电视传输调测期前应做的测量》.pdf ITU-T N 61 FRENCH-1988 Measurements to Be Made Before the Line-up Period That Precedes a Television Transmission《在电视传输调测期前应做的测量》.pdf
  • ITU-T N 61 SPANISH-1988 Measurements to Be Made Before the Line-up Period That Precedes a Television Transmission《在电视传输调测期前应做的测量》.pdf ITU-T N 61 SPANISH-1988 Measurements to Be Made Before the Line-up Period That Precedes a Television Transmission《在电视传输调测期前应做的测量》.pdf
  • ITU-T N 61-1988 Measurements to Be Made Before the Line-up Period That Precedes a Television Transmission《测量前作出一致行动的期限之前的一个电视传输-维护国际声音节目和电视传输电路的第4研究组 第1页》.pdf ITU-T N 61-1988 Measurements to Be Made Before the Line-up Period That Precedes a Television Transmission《测量前作出一致行动的期限之前的一个电视传输-维护国际声音节目和电视传输电路的第4研究组 第1页》.pdf
  • ITU-T N 62 FRENCH-1993 Tests to Be Made During the Line-up Period That Precedes a Television Transmission《在电视传输前的调测周期内进行的测试 国际播音节目及电视传输电路的维护 4号研究组 9pp》.pdf ITU-T N 62 FRENCH-1993 Tests to Be Made During the Line-up Period That Precedes a Television Transmission《在电视传输前的调测周期内进行的测试 国际播音节目及电视传输电路的维护 4号研究组 9pp》.pdf
  • 相关搜索

    当前位置:首页 > 考试资料 > 职业资格

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1