解题思路:
注意事项:
参考代码:
#include<stdio.h>
#include<string.h>
typedef struct score
{
char name[100];
int sc;
}score;
score ans[100],temp;
int main(void)
{
int i;
int j;
int n;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%s%d",ans[i].name,&ans[i].sc);
}
for(i=0;i<n;i++)
for(j=0;j<n-i-1;j++)
{
if(ans[j].sc<ans[j+1].sc)
{
temp=ans[j];
ans[j]=ans[j+1];
ans[j+1]=temp;
}
}
for(i=0;i<n;i++)
for(j=0;j<n-i-1;j++)
{
if(ans[j].sc==ans[j+1].sc)
{
if(strcmp(ans[j].name,ans[j+1].name)>0)
{
temp=ans[j];
ans[j]=ans[j+1];
ans[j+1]=temp;
}
}
}
for(i=0;i<n;i++)
puts(ans[i].name);
return 0;
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题6.3 (C++代码)浏览:963 |
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:609 |
循环入门练习5 (C语言代码)浏览:839 |
图形输出 (C语言代码)浏览:1387 |
1035 题解浏览:785 |
WU-C语言程序设计教程(第三版)课后习题12.3 (C++代码)浏览:862 |
C二级辅导-等差数列 (C语言代码)浏览:771 |
【偶数求和】 (C语言代码)浏览:441 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:578 |
简单的a+b (C语言代码)浏览:657 |