这道题求大神解答,感激不尽。
构造一个student的结构体,包含学号,性别,年龄,班级,分数五个属性。并构造结构体student数组stu[6].给数组赋值,将数组中的学生的年龄由大到小排序。输出学生信息。

慕粉1432406129
浏览 1111回答 1
1回答
-
zy112
#include<stdio.h>
#define N 3
struct student
{ int num;//学号
char sex;// 性别
char age;//年龄
char clas[40];//班级
float score;//成绩
};
struct student stu[3]={{0001,'M',23,"一班",89},{0002,'F',19,"一班",85},{0003,'M',25,"一班",98}};
int main()
{ struct student temp;
int i,j,k;
printf("The order is: \n");
for(i=0;i<N-1;i++)
{ k=i;
for(j=i+1;j<N;j++)
if(stu[j].age>stu[k].age)
k=j;
temp=stu[k];stu[k]=stu[i];stu[i]=temp;
}
for(i=0;i<N;i++)
printf("%d %c %d %s %f\n",stu[i].num,stu[i].sex,stu[i].age,stu[i].clas, stu[i].score);
printf("\n");
return 0;
}这里我就写了三个学生,检测一下,你可以改一下,改成更多的。
打开App,查看更多内容