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

   第24套上机考试试题
  已知数据文件IN.dat中存自200个阴位数,并已调用读函数RData()把这些数存入数组a中,请编写函数evenVal(),其功能是:若干个四位数的千位上的数字值小于等于百位卜的数字值,百位卜的数字值小于等于十位卜的数字值,以及十位卜的数字值小于等于个位卜的数字值,并且该四位数是偶数,则统计出满足此条件的个数count,并把这些四位数按从小到人的顺序存入数组b中。最后调用写函数WData(),把结果count以及数组b中符合条件的四位数输出到0UT.dat文件中。程序中己定义数组a[200],、b[200],已定义变量count。
  注意:部分程序已经给出。请勿改动数据文件IN.dat中的任何数据及主函数main()、读函数RData()和写函数WData()的内容。


   第24套试题答案及详解
  【审题分析】分析题目可知,题中需要解决的问题就是实现evenVal函数的功能问题,而evenVal函数的功能是:统计满足“若一个四位数的千位上的数字值小于等于百位上的数字值,百位上的数字值小于等于十位上的数字值,以及十位上的数字值小于等于个位上的数字值,并且该四位数是偶数”条件的个数count,并把这些四位数按从小到大的顺序存入数组b中。因此本题的关键在于如何将一个四位数拆分成单个数字。
  【解题思路】首先用一个四位数除以1000,就得到这个四位数的千位上的数字,赋给变量a1;用这个四位数对1000求余数,余数再除以100,就得到这个四位数的百位上的数字,赋给变量a2;用这个四位数对100求余数,余数再除以10,就得到这个四位数的十位上的数字,赋给变量a3;用这个四位数对10求余数,余数就是这个四位数的个位上的数字,赋给变量a4。然后如果a1<=a2、a2<=a3、a3<=a4、a[i]%2==0同时成立,则a[i]就是要求的数,把a[i]赋给b[count],同时变最count加1。最后对数组b中的数据从小到大进行排序。
  【参考答案】  

  【易错分析】四位数对1000求余数,余数再除以100,就得到这个四位数的百位卜的数字。a1<=a2、a2<=a3、a3<=a4、a[i]%2==0这4个条件同时成立,则a[i]就是要求的数。
  【考点链接】用除法和求余来得到四位数的每位上的数字。

责任编辑:小草

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