http://haofly.net/blog/2013/12/14/algorithm1/
主要功能
1.能按学期、按班级完成对学生成绩的录入、修改
2.能按班级统计学生的成绩,求学生的总分及平均分,并能根据学生的平均成绩进行排序
3.能查询学生成绩,不及格科目及学生名单
4.能按班级输出学生的成绩单
5.系统以菜单方式工作
实现代码
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct stu{
int term; // 学期
char grade[20]; // 班级
char num[20]; // 学号
char name[20]; // 姓名
float object[4]; // 三门课的 成绩,其中第0号元素存储总分
struct stu *next_stu; // 用于排序
struct stu *next; // 指向下一位同学
}STU;
STU *head = NULL; // 头指针
STU *tail = NULL; // 这是排序的头指针
// 新建tail指针,然后遍历,把是该学期该班级的学生结点有序添加如这个结点的位置,用next_stu来指向
void input(void);
void add(STU *p);
void revise(void);
void tongji(void);
void find_stu(void);
void find_list(void);
void output(void);
// 录入学生成绩
void input(void)
{
char ch;
STU *p = (STU *)malloc(sizeof(STU));
printf("请输入学期:");
scanf("%d", &p->term);
printf("请输入班级:");
scanf("%s", p->grade);
printf("请输入学号:");
scanf("%s", p->num);
printf("请输入姓名:");
scanf("%s", p->name);
printf("分别输入三门课的成绩:");
scanf("%f%f%f", &p->object[1], &p->object[2], &p->object[3]);
p->object[0] = p->object[1] + p->object[2]