目录
题面
2297. 买水果(15分)
描述
Lulu想要买水果,市场有很多水果,价格都不一样,lulu想从最便宜的开始买。请你帮她算一下吧。
输入
第一行是一个整数T(1<=T<=100),表示有T组数据,每组数据第一行为n,有n种水果,接下来有n行,每行有一个水果名字和相应的单位重量价格
输出
对每组数据,按价格从小到大的顺序输出水果。格式为水果名字和价格。
输入样例 1
1
3
apple 12
banana 15
pear 8
输出样例 1
pear 8
apple 12
banana 15
思路
重点
代码
#include<ctype.h>
#include<limits.h>
#include<math.h>
#include<stdbool.h>
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define sf struct fruit
struct fruit{
char name[20];
int price;
}a[100];
int cmp(const void *a, const void *b){
sf *pa = (sf*)a;
sf *pb = (sf*)b;
return (pa->price > pb->price) ? 1 : -1;
}
void solve(){
int n;scanf("%d",&n);
for (int i = 0; i < n; i++){
scanf("%s %d",a[i].name,&a[i].price);
}
qsort(a,n,sizeof(struct fruit),cmp);
for (int i = 0; i < n; i++){
printf("%s %d\n",a[i].name,a[i].price);
}
return;
}
int main(){
int t;scanf("%d",&t);
while(t--){
solve();
}
return 0;
}