码迷,mamicode.com
首页 > 其他好文 > 详细

学生档案

时间:2014-12-31 22:45:50      阅读:200      评论:0      收藏:0      [点我收藏+]

标签:

Q:有n个学生,每个学生都有自己的档案,包括学号,名字,成绩,需要按成绩由大到小的顺序给这几个学生排序。

输入:n+1行,第1行输入学生人数,剩下n行分别输入每个学生的学号,姓名,成绩。

输出:将学生的信息按成绩由大到小输出。

S:

#include<stdio.h>
struct stu
{
    int No;
    char name[50];
    double mark;
};
int main()
{
    struct stu s[31],temp;
    int n,i,j;
    //freopen("read.in","r",stdin);
    //freopen("write.out","w",stdout);
    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
    	scanf("%d%s%lf",&s[i].No,s[i].name,&s[i].mark);
    }
    for(i=0;i<n-1;i++)
    {
    	for(j=i;j>=0&&s[j].mark<s[j+1].mark;j--)
    	{
	    	temp=s[j];
	    	s[j]=s[j+1];
	    	s[j+1]=temp;
	    }
    }
    for(i=0;i<n;i++)
    {
    	printf("%d,%s,%lf\n",s[i].No,s[i].name,s[i].mark);
    }
    return 0;
}

 

学生档案

标签:

原文地址:http://www.cnblogs.com/LegendLa/p/4196712.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!