现在分别有五个人的名字和分数,请按照分数从高到低输出他们五个人的名字
#include<stdio.h> //定义一个结构体将名字和分数捆绑在一起 struct student { char name [21]; int score; }; int main () { struct student a[100],t; int i,j,n; scanf("%d",&n); for (i=1;i<=n;i++)//循环读入n个人名和分数 { scanf("%s %d",a[i].name,&a[i].score); } //冒泡排序核心 for (i=1;i<=n-1;i++) { for (j=1;j<=n-i;j++) { if (a[j].score<a[j+1].score) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } } } for (i=1;i<=n;i++) { printf("%s\n",a[i].name); } system("pause");//用于暂停程序,方便检查内容 return 0; }
结构体排序(冒泡排序)
最新推荐文章于 2023-05-23 16:14:37 发布