国家二级(C语言)机试-试卷100
(总分12, 做题时间90分钟)
1. 程序填空题
程序填空题()
1.
给定程序中,函数fun的功能是:调用随机函数产生20个互不相同的整数放在形参a所指数组中(此数组在主函数中已置0)。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANKl.C中。不得增行或删行,也不得更改程序的结构!
分值: 2
答案:
正确答案:(1)N (2)break (3)n
正确答案:(1)N (2)break (3)n
解析:本题中函数fun的功能是调用随机函数产生20个互不相同的整数放在形参a所指数组中,rand()产生的随机数可能相同,因此在fun函数中必须检查新生成的随机数是否已经存在,如果存在需要再次生成一个不存在的随机数。
2. 程序修改题
程序修改题()
1.
给定程序MODll.C中函数fun的功能是:将p所指字符串中的所有字符复制到b中,要求每复制三个字符之后插入一个空格。例如,在调用fun函数之前给a输入字符串:ABCDEFGHIJK,调用函数之后,字符数组b中的内容则为:ABC DEF GHI JK。请改正程序中的错误,使它能得出正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
分值: 2
答案:
正确答案:(1)b[k]=*p; (2)b[k++]=’ ’;
正确答案:(1)b[k]=*p; (2)b[k++]=’ ’;
解析:本题中函数的功能是将字符串p中的所有字符复制到字符串b中,要求每复制三个字符之后插入一个空格。本题可以利用一个计算数器统计复制字符的个数,根据计数器的值决定什么时候输入空格。
3. 程序设计题
程序设计题()
1.
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。形参n给出了字符串的长度,形参h给出了字符串
中前导*号的个数,形参e给出了字符串中最后*号的个数。在编写函数时,不得使用C语言提供的字符串函数。例如,字符串中的内容为:****A*BC*DEF*G*******,删除后,字符串中的内容应当是:A*BC*DEF*G。注意:部分源程序在文件PROGl.C文件中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
分值: 2
答案:字符串处理函数 如果是a展示b
正确答案:
正确答案:
解析:该程序功能是删除字符串前导和尾部的“*”号。解题过程是根据主函数中求出的前导和尾部的“*”数目,作为for循环条件,并且在循环过程中第一个非“*"号开始前移,实现函数功能。
窗体顶端
窗体底端
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论