1、2018 年计算机等级考试二级 C 语言程序题练习 24 及答案解析(总分:100.00,做题时间:60 分钟)一、程序填空题(总题数:1,分数:30.00)给定程序中,函数 fun 的功能是把形参 s 所指字符串中最右边的 n 个字符复制到形参 t 所指字符数组中,形成一个新串。若 s 所指字符串的长度小于 n,则将整个字符串复制到形参 t 所指字符数组中。例如,形参 s 所指的字符串为 abcdefgh,n 的值为 5,程序执行后 t 所指字符数组中的字符串应为 defgh。请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。注意:源程序保存在考生文件夹下的 BLANK1
2、. C 中。不得增行或删行,也不得更改程序的结构!给定源程序如下。(分数:30)(1).(分数:10)填空项 1:_(2).(分数:10)填空项 1:_(3).(分数:10)填空项 1:_二、程序改错题(总题数:1,分数:30.00)给定程序 MODI1.C 中函数 fun 的功能是找出 一个大于形参 m 且紧随 m 的素数,并作为函数值返回。请改正程序中的错误,使它能得出正确的结果。 注意:不要改动 main 函数,不得增行或删行, 也不得更改程序的结构!给定源程序如下。(分数:30.00)_三、程序设计题(总题数:1,分数:40.00)请编写函数 fun,它的功能是求出能整除形参 X 且不
3、是偶数的各整数,并按从小到大的顺序放在 PP 所指的数组中,这些除数的个数通过形参 n 返回。例如,若 x 中的值为 35,则有 4 个数符合要求, 分别是:1、5、7、35。注意:部分源程序保存在文件 PROG1.C 中。请勿改动主函数 main 和其他函数中的任何内容,仅在函数 fun 的花括号中填入编写的若干语句。给定源程序如下。(分数:40.00)_2018 年计算机等级考试二级 C 语言程序题练习 24 答案解析(总分:100.00,做题时间:60 分钟)一、程序填空题(总题数:1,分数:30.00)给定程序中,函数 fun 的功能是把形参 s 所指字符串中最右边的 n 个字符复制到
4、形参 t 所指字符数组中,形成一个新串。若 s 所指字符串的长度小于 n,则将整个字符串复制到形参 t 所指字符数组中。例如,形参 s 所指的字符串为 abcdefgh,n 的值为 5,程序执行后 t 所指字符数组中的字符串应为 defgh。请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。注意:源程序保存在考生文件夹下的 BLANK1. C 中。不得增行或删行,也不得更改程序的结构!给定源程序如下。(分数:30)(1).(分数:10)填空项 1:_ (正确答案:t,s)解析:当给定的长度 n 大于该字符串 s 的长度, 那么把该字符串直接拷贝到 t 就可以了,所以应填 t
5、,s。(2).(分数:10)填空项 1:_ (正确答案:si)解析:使用 for 循环语句,把最右边 n 个字符 依次添加到 t 中,所以应填 si。(3).(分数:10)填空项 1:_ (正确答案:0 或0)解析:字符串操作结束,需要给 t 加一个字 符串结束符,所以应填 0 或0。二、程序改错题(总题数:1,分数:30.00)给定程序 MODI1.C 中函数 fun 的功能是找出 一个大于形参 m 且紧随 m 的素数,并作为函数值返回。请改正程序中的错误,使它能得出正确的结果。 注意:不要改动 main 函数,不得增行或删行, 也不得更改程序的结构!给定源程序如下。(分数:30.00)_正
6、确答案:((1) if(i%k=0);(2) if(k=i)解析:(1) 判断当前数是否为素数,若存在一个数(1 和其自身除外)能整除当前数,则跳出本次循环, 所以 if 条件应为 i%k=0。(2) 如果 i 是素数,则循环结束时 k=i,将该值返回。三、程序设计题(总题数:1,分数:40.00)请编写函数 fun,它的功能是求出能整除形参 X 且不是偶数的各整数,并按从小到大的顺序放在 PP 所指的数组中,这些除数的个数通过形参 n 返回。例如,若 x 中的值为 35,则有 4 个数符合要求, 分别是:1、5、7、35。注意:部分源程序保存在文件 PROG1.C 中。请勿改动主函数 main 和其他函数中的任何内容,仅在函数 fun 的花括号中填入编写的若干语句。给定源程序如下。(分数:40.00)_正确答案:()解析:本题考査偶数的判定方法和整除的实现。本题题干信息是能整除 x 且不是偶数的所有整数。循环语句中变量 i 从 1 开始且每次增 2,所以 i 始终是奇数。整除的方法在前面已经讲过多次,这里不再赘述。本题目要求的是不是偶数的判定方法, 即该数对 2 求余不为 0。除以上方法外,还可以通 过 for 循环语句直接把偶数筛出去,确保参与操作的数均为奇数。