题目描述
定义存放一个学生信息的结构体类型,学生信息包括:姓名,学号,性别,院系,要求在随意输入 5 个学生的相关信息后,按照学号从小到大顺序输出这些学生的信息。
输入
先输入 5 名学生的信息,按学号顺序排序输出后在输入要统计的院系名称。
输出
先按学号从小到大的顺序输出学生信息。
输入输出样例
样例输入 #1
zhang3 20149003 M 信息系
zhang5 20149005 F 信息系
zhang10 20149010 F 管理系
zhang1 20149001 M 会计系
zhang9 20149009 M 会计系
样例输出 #1
zhang1 20149001 M 会计系
zhang3 20149003 M 信息系
zhang5 20149005 F 信息系
zhang9 20149009 M 会计系
zhang10 20149010 F 管理系
参考解答:
#include<stdio.h>
struct student
{
char name[10];
int num;
char sex;
char yuanxi[10];
}stu[5], s;
int main()
{
int i, j;
for (i = 0; i < 5; i++)
scanf("%s %d %c %s", &stu[i].name, &stu[i].num, &stu[i].sex, &stu[i].yuanxi);
for (i = 0; i < 5; i++)
{
for(j=0;j<5-i-1;j++)
if (stu[j].num > stu[j + 1].num)
{
s = stu[j];
stu[j] = stu[j + 1];
stu[j + 1] = s;
}
}
for (i = 0; i < 5; i++)
printf("%s %d %c %s\n", stu[i].name, stu[i].num, stu[i].sex, stu[i].yuanxi);
return 0;
}
?
|