必胜高考网 > 计算机类 > 计算机等级 > 资讯 >

2015计算机二级《C语言程序设计》无纸化操作题三份(2)

时间: 家辉2 资讯

  1下列给定程序中,函数fun的功能是:求ss所指字符串数组中长度最短的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指的变量中。ss所指字符串数组中共有M个字符串,且串长小于N。

  请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。

  注意:部分源程序给出如下。

  不得增行或删行,也不得更改程序的结构!

  试题程序:

  参考解析:

  【参考答案】

  (1)M (2)< (3)k

  【考点分析】

  本题考查:for循环语句的循环条件;if语句条件表达式;return语句完成函数值的返回。

  【解题思路】

  填空l:题目指出88所指字符串数组中共有M个字符串,所以for循环语句的循环条件是i

  填空2:要求求长度最短的字符串,*n中存放的是已知字符串中长度最短的字符串的长度,将当前字符串长度与+n比较,若小于*n,则将该长度值赋给*n,因此if语句的条件表达式为len<*n。

  填空3:将最短字符串的行下标作为函数值返回,变量k存储行下标的值。

  二、程序改错题

  2下列给定程序中函数fun的功能是:将tt所指字符串中的小写字母全部改为对应的大写字母,其他字符不变。

  例如,若输入“Ab,cD”,则输出“AB,CD”。

  请改正程序中的错误,使它能得出正确的结果。

  注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

  试题程序:

  参考解析:

  【参考答案】

  (1)if((tt[i]>=’a’)&&(tt[i]<=’Z’))

  (2)tt[i]一=32;

  【考点分析】

  本题考查:if语句条件表达式;小写字母转换为大写字母的方法。

  【解题思路】

  (1)分析本题可知,要判断字符是否为小写字母,即判断其是否在‘a’~‘z’之间,所以这里需要进行连续的比较,用&&。

  (2)从ASCIl码表中可以看出,小写字母的ASCⅡ码值比对应大写字母的ASCIl值大32。将字符串中的小写字母改为大写字母的方法是:从字符串第—个字符开始,根据ASCIl码值判断该字母是不是小写字母,若是,则ASCⅡ码值减32。

  三、程序设计题

  3编写函数fun,其功能是:实现两个字符串的连接(不要使用库函数streat),即把p2所指的字符串连接到pl所指的字符串的后面。

  例如,分别输入下面两个字符串:

  “FirstString--”

  “SecondString”

  程序输出:

  “FirstString--SeeondString”

  注意:部分源程序给出如下。

  请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

  试题程序:

  参考解析:

  【参考答案】

  【考点分析】

  本题考查:不使用字符串函数实现字符串连接操作。通过for循环语句来完成,最后需加上字符串结束标识‘\0’。

  【解题思路】.

  本题用两个循环完成操作,第1个循环的作用是求出第l个字符串的长度,即将i指到第1个字符串的末尾;第2个循环的作用是将第2个字符串的字符连到第l个字符串的末尾。最后在第1个字符串的结尾加上字符串结束标识‘\0’。

55635