就业数据资源平台
当前位置:首页 > 数据库技术
2012年计算机三级数据库技术上机指导:考试内容(3)

例2: 文件in.dat中有200个正整数,且每个数均在1000至9999之间。函数readDat()是读取这200个数存放到数组aa中。请编制函数jsSort(),其函数的功能是:要求按每个数的后三位的大小进行升序排列,将排序后的前10个数存入数组b中,如果数组b中出现后三位相等的数值,则对这些数值按原始4位数据进行降序排列。最后调用函数writeDat()把结果bb输出到文件out.dat中。

  例:处理前 6012 5099 9012 7025 8088


  处理后 9012 6012 7025 8088 5099


  注意:部分源程序存在文件PROG1.C文件中。


  请勿改动数据文件in.dat中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。


  部分源程序如下:


  #include


  #include


  #include


  int aa[200], bb[10] ;


  void jsSort()


  {


  }


  void main()


  {


  readDat() ;


  jsSort() ;


  writeDat() ;


  }


  readDat()


  {


  FILE *in ;


  int i ;


  in=fopen(“in.dat“, r) ;


  for(i=0 ; i<200 ; i+[KG-*3]+) fscanf(in, “%d,“, &aa[i]) ;


  fclose(in) ;


  }


  writeDat()


  {


  FILE *out ;


  int i ;


  clrscr() ;


  out=fopen(“out.dat“, w) ;


  for(i=0 ; i<10 ; i+[KG-*3]+) {


  printf(“i=%d,%d\n“, i + 1,bb[i]) ;


  fprintf(out, “%d\n“, bb[i]) ;


  }


  fclose(out) ;


  }

就业数据资源平台