为了账号安全,请及时绑定邮箱和手机立即绑定

关于结构体的冒泡排序问题

关于结构体的冒泡排序问题

C
qq_新生_10 2018-03-12 20:25:33
这是正确的代码:#include<stdio.h>#include<stdlib.h>struct student{ int     number; char    name[20]; int     score;}person[10];int main(){ struct student  temp; int   m,i,j,flag=1; scanf("%d",&m); for(i=0;i<m;i++)       {       scanf("%d %s %d",&person[i].number,person[i].name,&person[i].score);          } for(i=0;i<m-1;i++)      {       flag=1;       for(j=0;j<m-1-i;j++)           {                if(person[j].score>person[j+1].score)              {                temp=person[j+1];                 person[j+1]=person[j];                person[j]=temp;                 flag=0;              }  } if(flag==1) break;   } for(i=0;i<m;i++) printf("%d %s %d\n",person[i].number,person[i].name,person[i].score); system("pause"); return 0;}然而当for(j=0;j<m-1-i;j++)变为for(j=0;j<m-1;j++)时最后输出结果时,有一组结构体数据会成为0  0,求大家指教,
查看完整描述

目前暂无任何回答

  • 0 回答
  • 0 关注
  • 1263 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信