全国计算机等级三级网络技术机试练习习题(22)
来源:优易学  2010-1-14 20:18:45   【优易学:中国教育考试门户网】   资料下载   IT书店
 第22套上机考试试题
  下列程序的功能是:把str字符串中的所有字母改写成该字母的下一个字母,字母z改写成字母a。要求大写字母仍为大写字母,小写字母仍为小写字母,其他字符小做改变。
  请编写函数CharChange(char*str)实现程序要求,最后渊用函数RWData()从IN.dat文件中读取50组数据,分别得出结果,并把结果输出剑文件0UT.dat中。
  例如,str字符串中原有的内容为:Mn.123Zxy,则调用该函数后,结果为:No.123Ayz。
  注意:部分程序已经给出。请勿改动主函数main()和输出数据函数RWData()的内容。 


  第22套试题答案及详解
  【审题分析】分析题目可知,题中需要解决的问题就是实现CharChange函数的功能问题,而CharChange函数的功能是:实现“把str字符串中的所有字母改写成该字母的下一个字母,字母2改写成字母a。要求大写字母仍为大写字母,小写字母仍为小写字母,其他字符不做改变”。因此本题的关键在于如何判断将字符串拆分成单独的字母,之后就可以通过一个循环来将所有字符逐个替换,并存入数组str中。
  【解题思路】首先要考虑对特殊字符2和Z的处理,因为字符2和z的ASCII值比字符a和A的ASCII值大25,所以要把字符Z和z改写成字符a和A,只需要用字符z和z的ASCII值减去25,就得到字符a和A的ASCII值;对其他的字符,只需要对其值加1,就得到其下一个字符的ASCII值。
  【参考答案】 


8   }
9  }

  【易错分析】字符2和Z的ASCII值减玄25就得到字符a和A的ASCII值。
  【考点链接】while循环语句的使用、字符ASCII值之间的关系。

责任编辑:小草

文章搜索:
 相关文章
热点资讯
热门课程培训