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

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

1、二级 C 语言-363 及答案解析(总分:100.00,做题时间:90 分钟)一、程序填空题(总题数:1,分数:30.00)1.函数 fun 的功能是进行字母转换。若形参 ch 中是小写英文字母,则转换成对应的大写英文字母:若 ch中是大写英文字母,则转换成对应的小写英文字母;若是其他字符,则保持不变,并将转换后的结果作为函数值返回。 请在程序的下划线处填入正确的内容,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构! 试题程序: #includestdio.h #includectype.h char fun(char ch) /*found*/ if

2、ch=“a“) 1(ch=“z“) return(ch-“a“+“A“); if(isupper(ch) /*found*/ return ch+“a“- 2; /*found*/ return 3; main() char c1,c2; printf(“/nThe result:/n“); c1=“w“;c2=fun(c1); printf(“c1=%c c2=%c“,c1,c2); c1=“w“;c2=fun(c1); printf(“c1=%c c2=%c“,c1,c2); c1=“8“;c2=fun(c1); printf(“c1=%c c2=%c“,c1,c2); (分数:30.0

3、0)二、程序改错题(总题数:1,分数:30.00)2.下列给定程序中,函数 fun 的功能是:给一维数组 a 输入任意 4 个整数,并按如下的规律输出。例如,输入 1、2、3、4,程序运行后输出以下方阵: 4 1 2 3 3 4 1 2 2 3 4 1 1 2 3 4 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构! 试题程序: #includestdio.h #define M 4 /*found*/ void fun(int a) int i,j,k,m; printf(“Enter 4 number:“); for(i=0

4、iM;i+) scanf(“%d“, printf(“/n/nThe result:/n/n“); for(i=M;=i0;i-) k=aM-1; for(j=M-1;j0;j-) /*found*/ aj=aj+1; a0=k; for(m=0;mM;m+) printf(“%d“,am); printf(“/n“); void main() int aM; fun(a); printf(“/n/n“); (分数:30.00)三、程序设计题(总题数:1,分数:40.00)3.请编写一个函数 fun,它的功能是:计算并输出给定整数 n 的所有因子(不包括 1 与自身)之和。规定 n的值不大于

5、 1000。 例如,若主函数从键盘给 n 输入的值为 856,则输出为 sum=763。 注意:部分源程序给出如下。 请勿改动 main 函数和其他函数中的任何内容,仅在函数 fun 的花括号中填入所编写的若干语句。 试题程序: #includestdio.h int fun(int n) main() int n,sum; printf(“Input n:“); scanf(“%d“, sum=fun(n); printf(“sum=%d/n“,sum); (分数:40.00)_二级 C 语言-363 答案解析(总分:100.00,做题时间:90 分钟)一、程序填空题(总题数:1,分数:30

6、00)1.函数 fun 的功能是进行字母转换。若形参 ch 中是小写英文字母,则转换成对应的大写英文字母:若 ch中是大写英文字母,则转换成对应的小写英文字母;若是其他字符,则保持不变,并将转换后的结果作为函数值返回。 请在程序的下划线处填入正确的内容,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构! 试题程序: #includestdio.h #includectype.h char fun(char ch) /*found*/ if(ch=“a“) 1(ch=“z“) return(ch-“a“+“A“); if(isupper(ch) /*fo

7、und*/ return ch+“a“- 2; /*found*/ return 3; main() char c1,c2; printf(“/nThe result:/n“); c1=“w“;c2=fun(c1); printf(“c1=%c c2=%c“,c1,c2); c1=“w“;c2=fun(c1); printf(“c1=%c c2=%c“,c1,c2); c1=“8“;c2=fun(c1); printf(“c1=%c c2=%c“,c1,c2); (分数:30.00)解析:(1) printf(“Enter 4 number:“); for(i=0;iM;i+) scanf(“

8、d“, printf(“/n/nThe result:/n/n“); for(i=M;=i0;i-) k=aM-1; for(j=M-1;j0;j-) /*found*/ aj=aj+1; a0=k; for(m=0;mM;m+) printf(“%d“,am); printf(“/n“); void main() int aM; fun(a); printf(“/n/n“); (分数:30.00)解析:(1)void fun(int *a) (2)aj=aj-1; 解析 (1)由函数的调用形式可知,函数 fun 的形参变量应为指针类型。 (2)每次循环都将最后一个元素取出,使前面的元素向后

9、移动一位,因此为 aj=aj-1;。三、程序设计题(总题数:1,分数:40.00)3.请编写一个函数 fun,它的功能是:计算并输出给定整数 n 的所有因子(不包括 1 与自身)之和。规定 n的值不大于 1000。 例如,若主函数从键盘给 n 输入的值为 856,则输出为 sum=763。 注意:部分源程序给出如下。 请勿改动 main 函数和其他函数中的任何内容,仅在函数 fun 的花括号中填入所编写的若干语句。 试题程序: #includestdio.h int fun(int n) main() int n,sum; printf(“Input n:“); scanf(“%d“, sum=fun(n); printf(“sum=%d/n“,sum); (分数:40.00)_正确答案:()解析:int fun(int n) int s=0,i; for(i=2;i=n-1;i+) /*将 n 减 1 累加*/ if(n%i=0) s+=i; return s; 解析 本程序的实现步骤为:首先遍历从 2n-1 的所有整数;然后用条件语句找出能被 n 整除的所有整数,并累加求和;最后返回值。

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

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

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