定义一个结构体数组存放五位学生的学号,姓名以及3门课程的成绩,编写程序从屏幕输入这五位学生的信息,对次数组按总分进行排序在打印排序后的学生信息。建立一个单向链表,将数组中的学生信息存放到链表中,并尝试在链表中进行排序。
2条回答 默认 最新
- CSDN专家-赖老师(软件之家) 2021-05-16 20:58关注
参考一下:
/* Note:Your choice is C IDE */ #include "stdio.h" #define N 2 struct Student { //学号 int num; //成员变量或者一个数据项 //姓名 char name[20]; //性别 char sex; //M,F //成绩 float html; float ppt; float cyuyan; float sum; }st[N]; void input(); void display(); void main() { input(); display(); } //输入函数 void input() { int i; for(i=0;i<N;i++) { printf("请输入第%d个学生的学号,姓名,性别,html,ppt,cyuyan:",i+1); scanf("%d",&st[i].num); scanf("%s ",st[i].name); scanf("%c ",&st[i].sex); scanf("%f",&st[i].html); scanf("%f",&st[i].ppt); scanf("%f",&st[i].cyuyan); st[i].sum = st[i].html+st[i].ppt+st[i].cyuyan; } } //输出 void display() { int i; printf("学号\t姓名\t\t性别\thtml\tppt\tC语言\t总分\t平均分\n"); for(i=0;i<N;i++) { printf("%d\t%s\t%c\t%0.2f\t%0.2f\t%0.2f\t%0.2f\t%0.2f\n",st[i].num,st[i].name,st[i].sex,st[i].html,st[i].ppt,st[i].cyuyan,st[i].sum,st[i].sum/3); } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥20 关于#硬件工程#的问题,请各位专家解答!
- ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
- ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
- ¥30 截图中的mathematics程序转换成matlab
- ¥15 动力学代码报错,维度不匹配
- ¥15 Power query添加列问题
- ¥50 Kubernetes&Fission&Eleasticsearch
- ¥15 報錯:Person is not mapped,如何解決?
- ¥15 c++头文件不能识别CDialog
- ¥15 Excel发现不可读取的内容