2013年计算机三级网络技术上机模拟题及答案解析二十

考试站(www.examzz.com)   【考试站:中国教育考试第一门户】   2013年4月18日
在文件IN70.DAT中有200组数据,每组有3个数,每个数均是3位数。函数readDat()是读取这200组数据存放到结构数组aa中。请编制函数jsSort(),其函数的功能是:要求在200组数据中找出条件为每组数据中的第二个数大于第一个数加第三个数之和,其中满足条件的个数作为函数jsSort()的返回值,同时把满足条件的数据存入结构数组bb中,再对结构数组bb中的数据按照每组数据的第二个数加第三个数之和的大小进行降序排列,排序后的结果仍重新存入结构数组bb中,最后调用函数writeDat()把结果bb输出到文件OUT70.DAT中。
  注意:部分源程序已给出。
  请勿改动主函数main()、读函数readDat()和写函数writeDat()的内容。
  试题程序:
  #include
  #include
  #include
  typedef struct
  {
  int x1, x2, x3; 
  } Data;
  Data aa[200], bb[200];
  void readDat();
  void writeDat();
  int jsSort()
  {
  }
  void main()
  {
  int count;
  readDat();
  count = jsSort(); /*返回满足条件的个数*/
  writeDat(count);
  }
  void readDat()
  {
  FILE *in;
  int i;
  in = fopen("IN70.DAT", "r");
  for(i=0; i<200; i++)
  fscanf(in, "%d %d %d", &aa[i].x1, &aa[i].x2, &aa[i].x3);
  fclose(in);
  }
  void writeDat(int count)
  {
  FILE *out;
  int i;
  out= fopen("OUT70.DAT", "w");
  system("CLS");
  for(i=0; i  {
  printf("%d, %d, %d 第二个数+第三个数=%d\n", bb[i].x1, bb[i].x2, bb[i].x3, bb[i].x2+bb[i]. x3);
  fprintf(out, "%d, ], %d\n", bb[i].x1, bb[i].x2, bb[i].x3);
  }
  fclose(out);
  }
首页 1 2 尾页

相关文章