全国计算机等级三级网络技术机试练习习题(13)
来源:优易学  2010-1-14 20:12:53   【优易学:中国教育考试门户网】   资料下载   IT书店

  第13套上机考试试题
  函数Rdata()实现从文件IN.dat中读取一篇英文文章存入到字符串数组string中,请编写ConvertCharD()函数,其功能是:以行为单位把字符串中的所有小写字母改写成该字母的上一个字母,如果是字母a,则改写成字母2。大写字母仍为大写字母,小写字母仍为小写字母,其他字符不变,最后把已处理的字符串仍按行重新存入字符串数组string中。最后调用函数Wdata(),把结果string输出到文件OUT.dat中。
  例如,原文:Adb.Bcdza
  abck.LLhj
  结果:Aca.Bbcyz
  zabj.LLgi
  原始数据文件存放的格式是:每行的宽度均小于80个字符。
  注意:部分源程序已经给出。请勿改动主函数main()、读数据函数Rdata()和输出数据函数wdata()的内容。

1 #include
2 #include

 第13套试题答案及详解
  【审题分析】分析题目可知,本题只要实现ConvertCharD()函数的功能即可。ConvertCharD()要实现的功能是:以行为单位把字符串中的所有小写字母改写成该字母的上一个字母,如果是字母a,则改写成字母z。火写字母仍为大写字母,小写字母仍为小写字母,其他字符不变。最后把已处理的字符串仍按行重新存入字符串数组string中。凶此解答本题的关键在于如何实现字符问的转换。
  【解题思路】在for循环语中当自变量从0递增到maxline时,就完成了对一篇文章中每一行的字符进行判断。如果字符是a,就用字符z替换,否则如果字符是大于等于字符b,而小于等于字符z的ASCII码值,就对其ASCII码值减1。
  【知识拓展】字符问的转换可以通过字母的ASCII值来实现,字母的ASCII值比上一个字母的的ASCII大1。
  【参考答案】

  【易错分析】判断字符的范围是否大于等于字符b而小于等于字符Z;对于字符a,要单独进行处理。
  【考点链接】c语言的for循环语句;字符的ASCII码值减1,就是其上一个字符的ASCII码值。

责任编辑:小草

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