输入描述
第一行输入总的种类数1≤n≤20
接下来n行每行依次输入该种的适用年龄a,价格b和名称(1≤a,b≤100)名称为一个字母,该字母可能大写可能小写
输出描述
按次序依次输出排序后的奶粉排列情况(对价格进行从大到小的排序,如若价格相等,则对适用年龄从大到小排序,保证在价格相等的情况下年龄一定不同)输出的n行,每行依次为该种的适用年龄a,价格b和名称。
输入描述
第一行输入总的种类数1≤n≤20
接下来n行每行依次输入该种的适用年龄a,价格b和名称(1≤a,b≤100)名称为一个字母,该字母可能大写可能小写
输出描述
按次序依次输出排序后的奶粉排列情况(对价格进行从大到小的排序,如若价格相等,则对适用年龄从大到小排序,保证在价格相等的情况下年龄一定不同)输出的n行,每行依次为该种的适用年龄a,价格b和名称。
#Include <stdio.h>
typedef struct _nf
{
char name;
int age;
float price;
}nf;
void fun(nf *a,int n)
{
for(int i=0;i<n-1;i++)
{
for(int j=0;j<n-i-1;j++)
{
if((a[j].price < a[j+1].price) || (a[j].price == a[j+1].price) && (a[j].age <a[j+1].age))
{
nf t= a[j];
a[j] = a[j+1];
a[j+1] = t;
}
}
}
}
int main()
{
nf a[20];
int n = 0;
scanf("%d",&n);
for(int i=0;i<n;i++)
scanf("%d%f%c",&a[i].age,&a[i].price,&a[i].name);
fun(a,n);
for(int i=0;i<n;i++)
printf("%c %d %f\n",a[i].name,a[i].age,a[i].price);
return 0;
}