【计算机类职业资格】二级C语言-145及答案解析.doc

上传人:bowdiet140 文档编号:1324901 上传时间:2019-10-17 格式:DOC 页数:5 大小:31KB
下载 相关 举报
【计算机类职业资格】二级C语言-145及答案解析.doc_第1页
第1页 / 共5页
【计算机类职业资格】二级C语言-145及答案解析.doc_第2页
第2页 / 共5页
【计算机类职业资格】二级C语言-145及答案解析.doc_第3页
第3页 / 共5页
【计算机类职业资格】二级C语言-145及答案解析.doc_第4页
第4页 / 共5页
【计算机类职业资格】二级C语言-145及答案解析.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、二级 C 语言-145 及答案解析(总分:100.00,做题时间:90 分钟)一、程序填空题(总题数:1,分数:30.00)1.请补充 main()函数,该函数的功能是:打印出满足个位的数字、十位上的数字和百位上的数字都相等的所有 3 位数。 本题的结果为:111 222 333 444 555 666 777 888 999。 注意:部分源程序给出如下。 请勿改动 main()函数和其他函数中的任何内容,仅在 main()函数的横线上填入所编写的若干表达式或语句。 试题程序: #includestdlib.h #includestdio.h void main() int a, b, c;

2、system(“CLS“); for(a=1; a10; a+) for(b=1; b10; b+) for(c=1; c10; c+) if( 1) printf(“%5d“, 2); (分数:30.00)二、程序改错题(总题数:1,分数:40.00)2.下列给定的程序中,函数 proc()的功能是:用选择法对数组中的 n 个元素按从大到小的顺序进行排序。请修改程序中的错误,使它能得出正确的结果。 注意:不要改动 main()函数,不得增行或删行,也不得更改程序的结构。 试题程序: #includestdio.h #define M 20 void proc(int a, int n) in

3、t i, j, t, p; for(j=0; jn-1; j+) /*found* p=j for(j=j; in; i+) if(aiap) /*found* p=j; t=ap; ap=aj; aj=t; void main() int arrM=9, 6, 8, 3, -1, i, m=5; printf(“排序前的数据:“); for(i=0; im; i+)printf(“%d“, arri); printf(“/n“); proc(arr, m); printf(“排序后的顺序:“); for(i=0; im; i+)printf(“%d“, arri); printf(“/n“)

4、; (分数:40.00)_三、程序设计题(总题数:1,分数:30.00)3.请编写一个函数 void proc(char *str),其功能是:将字符串 str 中所有下标为偶数位置上的字母转化为大写(若该位置上不是字母,则不转换)。 例如,若输入字符串:“thank you6 very much”,则应输出:“ThAnK YoU6 vErY MuCh”。 注意:部分源程序给出如下。 请勿改动 main()函数和其他函数中的任何内容,仅在函数 proc()的花括号中填入所编写的若干语句。 试题程序: #includeconio.h #includestdio.h #includestdlib.

5、h void proc(char *str) void main() char tt51; system(“CLS“); printf(“Please enter an character string within 50 characters: /n“); gets(tt); printf(“/n/nAfter changing, the string/n%s“, tt); proc(tt); printf(“/nbecomes/n%s“, tt); (分数:30.00)_二级 C 语言-145 答案解析(总分:100.00,做题时间:90 分钟)一、程序填空题(总题数:1,分数:30.00

6、)1.请补充 main()函数,该函数的功能是:打印出满足个位的数字、十位上的数字和百位上的数字都相等的所有 3 位数。 本题的结果为:111 222 333 444 555 666 777 888 999。 注意:部分源程序给出如下。 请勿改动 main()函数和其他函数中的任何内容,仅在 main()函数的横线上填入所编写的若干表达式或语句。 试题程序: #includestdlib.h #includestdio.h void main() int a, b, c; system(“CLS“); for(a=1; a10; a+) for(b=1; b10; b+) for(c=1; c

7、10; c+) if( 1) printf(“%5d“, 2); (分数:30.00)解析:a=b for(j=0; jn-1; j+) /*found* p=j for(j=j; in; i+) if(aiap) /*found* p=j; t=ap; ap=aj; aj=t; void main() int arrM=9, 6, 8, 3, -1, i, m=5; printf(“排序前的数据:“); for(i=0; im; i+)printf(“%d“, arri); printf(“/n“); proc(arr, m); printf(“排序后的顺序:“); for(i=0; im;

8、 i+)printf(“%d“, arri); printf(“/n“); (分数:40.00)_正确答案:()解析:(1)错误:p=j 正确:p=j; (2)错误:p=j; 正确:p=i; 解析 根据 C 语言的语法规则,每一条语句都要以分号结束。因此,“p=j”后要加上分号“;”。每次比较后要把小的下标赋值给 p,因此,“p=j;”应改为“p=i;”。三、程序设计题(总题数:1,分数:30.00)3.请编写一个函数 void proc(char *str),其功能是:将字符串 str 中所有下标为偶数位置上的字母转化为大写(若该位置上不是字母,则不转换)。 例如,若输入字符串:“thank

9、 you6 very much”,则应输出:“ThAnK YoU6 vErY MuCh”。 注意:部分源程序给出如下。 请勿改动 main()函数和其他函数中的任何内容,仅在函数 proc()的花括号中填入所编写的若干语句。 试题程序: #includeconio.h #includestdio.h #includestdlib.h void proc(char *str) void main() char tt51; system(“CLS“); printf(“Please enter an character string within 50 characters: /n“); gets(tt); printf(“/n/nAfter changing, the string/n%s“, tt); proc(tt); printf(“/nbecomes/n%s“, tt); (分数:30.00)_正确答案:()解析:void proc(char*str) int i; for(i=0; stri!=“/0“; i+) if(i%2=0 /将其转化为大写 解析 要将字符串 str 中下标为偶数位置上的字符转化为大写字母,首先应该判断字符串 str 中下标为偶数位置上的字符是否为小写字母,若是将其转化为大写字母,若不是不做任何变化。

展开阅读全文
相关资源
猜你喜欢
相关搜索

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

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