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

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值