学生成绩管理系统成绩的录入c语言,C语言实现学生成绩管理系统实战教学

趁着放假无事,开始用C语言开发一些小的项目,巩固基础知识的同时学习新的知识。

学生成绩管理系统实现的功能有:成绩录入、学生成绩查询、删除、修改、通过文件保存等。

开发这样一个系统需要具备的知识:线性表(链表)、文件操作、排序(如果需要成绩排序)。

开发环境为VS2015;在Linux下没有conio.h的头文件,需要修改与getch()函数相关的代码。

#include

#include

#include

#include

/*学生信息结构体*/

typedef struct Node

{

char Name[10];//学生姓名

char ID[15];//学生学号

int Score[3];//三科成绩(数学、英语、数据结构)

float Ave_Sco;

struct Node *next;

}Lnode;

void Display(); /*界面显示函数*/

void GetScore(Lnode *&h); /*成绩录入函数*/

void PrintScore(Lnode *h); /*成绩打印函数*/

void ModifyScore(Lnode *h); /*成绩修改函数*/

void FindInf(Lnode *h); /*查找信息*/

void Delete(Lnode *h); /*删除函数*/

void Quit(Lnode *h); /*退出函数*/

void SaveInf(Lnode *h);

void LoadInf(Lnode *h);

/*初始化链表*/

void InitList(Lnode *&head)

{

head = (Lnode *)malloc(sizeof(Lnode));

if (head == NULL)

{

printf("error!");

exit(1);

}

head->next = NULL; //使头节点指针域为空

}

int main()

{

Lnode *ScoreList; //建立成绩链表,所有学生信息存放在此链表

int Function;

char flag;

int t = 0;

InitList(ScoreList);

LoadInf(ScoreList);

while (1)

{

Display();

printf("请选择操作: ");

scanf("%d", &Function);

switch (Function)

{

case 1: while (1)

{

GetScore(ScoreList);

printf("是否继续输入 (Y/N)");

scanf("%s", &flag);

if (flag == 'N' || flag == 'n')break;

} system("cls"); break;

case 2: PrintScore(ScoreList);_getch(); system("cls"); break;

case 3: ModifyScore(ScoreList);system("cls"); break;

case 4: FindInf(ScoreList); _getch(); system("cls"); break;

case 5: Delete(ScoreList); _getch(); system("cls"); break;

case 6: Quit(S

你可能感兴趣的:(学生成绩管理系统成绩的录入c语言,C语言实现学生成绩管理系统实战教学)