临近期末选到个这个题目,直接去世,当时还有结构体和链表老师都没讲。
通了两个宵把它赶出来了。
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
/*定义一个学生*/
typedef struct _Student {
char name[20];
int StuNum;
double HigherMathematic;
double CollegeEnglish;
double Computer;
} Student;
/*节点*/
typedef struct _Node {
Student stu; //学生
struct _Node *pNext; //指向下一个节点的指针
} Node;
Node *g_pHead = NULL; //头节点
/*函数声明*/
/*欢迎*/
void welcome();
/*学生成绩的录入功能*/
void InputStudentGrade();
/*学生成绩浏览*/
void PrintfScore();
/*学生成绩的保存*/
void SaveStudent();
/*统计学生各门课程的平均分*/
void CountCourseAverageScore();
/*统计每个学生的平均分*/
void CountStudentAverageScore();
/*查找学生(按成绩段查询)*/
void FindStudent(int up, int low); //输出分数段
/*删除学生的成绩*/
void DeleteStudent();
/*修改学生的成绩*/
void ModifyStudent();
int main() {
int up = 0, low = 0;
while (1) {
welcome(); //欢迎
char ch = _getch(); //从键盘接受一个字符,不需要按回车确认。
switch (ch) {
case'1'://学生成绩的录入功能
InputStudentGrade();
break;
case'2': //学生成绩的浏览功能
PrintfScore();
break;
case'3': //学生成绩的保存
SaveStudent();
break;
case'4'://统计学生各门课程的平均分
CountCourseAverageScore();
break;
case'5': //统计每个学生的平均成绩
CountStudentAverageScore();
break;
case'6': //查询功能:按成绩段查询
printf("请输入成绩段:");
scanf("%d %d", &low, &up); //输入分数段
FindStudent(up, low);
break;
case'7': //学生成绩的删除
DeleteStudent();
break;
case'8': //学生成绩的修改
ModifyStudent();
break;
case'0': //退出系统
printf("感谢使用!Bye--Bye!欢迎下次再用\n");
return 0;
default:
printf("您的输入有误,请重新输入!");
system("pause"); //暂停
system("cls"); //清屏
break;
}
}
return 0;
}
/*欢迎*/
void welcome() {
printf("*************************************************\n");
printf("*\t欢迎使用高校学生成绩