已知在文件in.dat中存有200组数据,每组有3个数,每个数均是三位数。函数readDat是读取这200组数据

17 查阅

已知在文件in.dat中存有200组数据,每组有3个数,每个数均是三位数。函数readDat是读取这200组数据存放到结构数组aa中。请编制函数jsSort,其函数的功能是:要求在200组数据中找出第二个数大于第一个数加第三个数之和的数,其中满足条件的个数作为函数jsSort的返回值,同时把满足条件的数据存入结构数组bb中,再对bb中的数据按照每组数据的第二个数加第三个之和的大小进行降序排列(第二个数加第三个数的和均不相等),排序后的结果仍重新存入结构数组 bb中,最后调用函数writeDat把结果bb输出到out.dat文件中。 注意:部分源程序存在test.C文件中。 请勿改动数据文件in.dat中的任何数据、主函数main、读函数readDat和写函数writeDat的内容。

参考答案:

【审题关键句】第2个数大于第1个数加第3个数,存入数组,按第2个加第3个数之和降序排序。 【解题思路】 ①首先定义两个循环变量i、j;一个计数变量count;一个用于中间转换数据的结构体变量CC。 ②建立一个for循环,指定第一个for循环的循环变量i从0开始,到200时结束,每循环一次,变量i的值加1。在循环体中依次判断每行数据中,如果aa[i]的第二个数大于第一个数加第三个数之和,则把aa[i]复制到bb[count]中,同时数组下标变量count加1。 ③将所有满足条件的记录筛选保存到数组bb口后,

计算机三级