全国计算机等级三级网络技术机试练习习题(32)
来源:优易学  2010-1-14 20:25:45   【优易学:中国教育考试门户网】   资料下载   IT书店
  第32套上机考试试题
  请补充完整RData()数,实现从文件IN.DET中读取1000个十进制整数到数组evennum中,请编写函数Compute()分别计算出evennum 中奇数的个数odd,偶数的个数even,奇数的半均值avel,偶数的、平均值ave2以及所有偶数的方差totfc的值。最后调用函数WData(),把结果输出到OUT.dat文件中。
  计算方程的公式如下:   

  其中:N为偶数的个数,evennum[i]为偶数,ave2为偶数的平均值。
  原始数据文件存放的格式是:每行存放10个数(每个数均大于0且小于等于2000),并用逗号隔开。
  注意:部分程序已经给出。请勿改动主函数main()和输出数据函数WData()的内容。  


  第32套试题答案及详解
  【审题分析】分析题目可知,本题只要实现Compute()igl数的功能即可。函数Compute()要实现的功能是:分别计算出数组evennum中奇数的个数odd,偶数的个数even,奇数的平均值ave1,偶数的平均值ave2以及所有偶数的办差totfc的值。因此解答本题的关键在于如何判断一个数是否为奇数或为偶数。
  【解题思路】对数组evennum[i]中的1000个整数逐个进行扫描处理,如果evennum[i]对2的余数为1,则evennum[i]为奇数,变量odd加1,把evennum[i]的值加到变量ave1中去;否则evetmum[i]为偶数,变量even加1,把evennum[i]的值加到变量ave2中去,同时把evennum[i]的值输给数组result。退出循环时,变量ave1的值即为所有奇数的和,然后用ave1的值除以奇数的个数odd,就得到所有奇数的平均值;变量ave2的值即为所有偶数的和,然后用ave2的值除以偶数的个数even,就得到所有偶数的平均值。最后在for循环语句中根据方差的公式求出所有偶数的方差。
  【参考答案】  


  【易错分析】用对2的求余运算判断一个正整数是奇数还是偶数。在求方差的for循环语句中循环变量的取值范围是所有偶数的个数。
  【考点链接】求余运算、C语句中条件判断语句ifelse语句的使用。

责任编辑:小草

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