频道栏目
首页 > 考试 > 等级考试 > 三级 > 网络技术 > 正文

计算机等级考试三级网络技术上机练习题及答案10

2013-05-23 08:07:35           
收藏   我要投稿
已知数据文件IN.dat中存有300个四位数,并已调用读函数Rdata()把这些数存入数组a 中,请编写函数diffVal(),其功能是:求出个位数上的数减千位数上的数减百位数上的数减十位数上的数大于0的个数count,再求出所有满足此条件的四位数的平均值Ave1,以及不满足此条件的四位数平均值Ave2。最后调用写函数Wdata(),把结果输出到OUT.dat文件中。
  例如,1239,9-1-2-3>0,则该数满足条件计算平均值Ave1,且个数count=count+1。8129,9-8-1-2<0,则该数不满足条件计算平均值Ave2。
  注意:部分源程序已经给出。程序中已定义数组a[300],已定义变量count、Ave1、Ave2。请勿改动主函数main()、读函数Rdata()和写函数Wdata()的内容。
  \  【审题分析】分析题目可知,本题只要实现diffVal()函数的功能即可。diffVal()要实现的功能是:求出个位数上的数减千位数上的数减百位数上的数减十位数上的数大于零的个数count,再求出所有满足此条件的四位数平均值Avel,以及不满足此条件的四位数平均值Ave2。因此解答本题的关键在于如何将一个四位数的每位数拆分成单个数字。
  【解题思路】对于每一个四位数,用这个四位数除以1000,可得到这个四位数千位上的数字输给变量thou;这个四位数对1000求余然后再除以100,可得到这个四位数百位上的数字输给变量hun;这个四位数对100求余然后再除以10,可得到这个四位数十位上的数字输给变量ten;这个四位数对10求余,可得到这个四位数个位上的数字输给变量data。
  然后判断表达式data-thou-hun-ten是否大于0,如果大于0,则计数变量count加1,同时把这个数加到变量Ave1上;否则计数变量n加1,同时把这个数加到变量Ave2上。退出循环后,变量Ave1的值除以count值就得到所有满足此条件的四位数的平均值,变量Ave2的值除以n值就得到所有不满足此条件的四位数的平均值。
  【参考答案】
  \
  18 Ave2/=n;
  19 }
  【易错分析】用求余运算和除法运算得到一个四位数的各个位上的数字。
  【考点链接】求余运算、除法运算。
上一篇:计算机等级考试三级网络技术上机练习题及答案7
下一篇:计算机等级考试三级网络技术上机练习题及答案9
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站