首页 > 代码库 > 学生档案
学生档案
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;}
学生档案
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。