首页 > 电脑

c语言怎样实现读取文件内数据并排序,再输出到原文件里?

更新时间2018-03-27 11:37:45

我写的还是原来一样的输出顺序,排序的代码完全没用,请指教!!!

/*----------------------------查看全班所有成绩-----------------------------*/

void teacher1()

{

int i = 0,j,n;

int x,y;

struct xinxi temp;

char ss[10];

system("cls");

FILE * fp;

if((fp = fopen("C:UsersAsusDesktoppj.txt","r")) == NULL)

{

      printf("不能找到pj.txt文件");

      exit(1); 

}

printf("%10s %6s %4s %4s %4s ","学号","姓名","英语","现代","程序设计");

while (!feof(fp))

{

      fread(&score[i],sizeof(struct xinxi),1,fp);

      i++;

for (x = 0; x < i; x++)

{

      for (y = x; y < i; y++)

     {

           if(score[y].id > score[x].id )

          {

           temp = score[x];

          score[x] = score[y];

          score[x]  = temp;

          }

    }

}


你的交换明显是错的

 temp = score[x];

         score[x] = score[y];

         score[x]  = temp;

正确的

 temp = score[x];

         score[x] = score[y];

         score[y]  = temp;


相关标签:c语言

上一篇:C#中,字符串转化问题

下一篇:小程序能做直播功能吗?