C 小白鼠排队(九度OJ 1110)

来源:互联网 发布:破解app软件网站 编辑:程序博客网 时间:2024/05/29 14:05

题目描述:

N只小白鼠(1 <= N <= 100),每只鼠头上戴着一顶有颜色的帽子。现在称出每只白鼠的重量,要求按照白鼠重量从大到小的顺序输出它们头上帽子的颜色。帽子的颜色用“red”,“blue”等字符串来表示。不同的小白鼠可以戴相同颜色的帽子。白鼠的重量用整数表示。

输入:
多案例输入,每个案例的输入第一行为一个整数N,表示小白鼠的数目。
下面有N行,每行是一只白鼠的信息。第一个为不大于100的正整数,表示白鼠的重量,;第二个为字符串,表示白鼠的帽子颜色,字符串长度不超过10个字符。
注意:白鼠的重量各不相同。

输出:

每个案例按照白鼠的重量从大到小的顺序输出白鼠的帽子颜色。

样例输入:
330 red50 blue40 green
样例输出:
bluegreenred
源代码:
#include <stdio.h>struct mice{    int weight;    char hatcolor[20];};int main(){    struct mice m[100];    struct mice temp;    int i,j,n;    while(scanf("%d",&n)!=EOF)    {        for(i=0;i<n;i++)            scanf("%d %s",&m[i].weight,m[i].hatcolor);        for(i=0;i<n-1;i++)        {            for(j=0;j<n-1-i;j++)            {                if(m[j].weight<m[j+1].weight)                {                    temp=m[j];                    m[j]=m[j+1];                    m[j+1]=temp;                }            }        }        for(i=0;i<n;i++)        {            printf("%s\n",m[i].hatcolor);        }    }    return 0;}

程序截图:


0 0
原创粉丝点击