c语言设计课程管理系统,《c语言课程设计-学生管理信息系统设计》.doc

本文探讨了如何利用C语言设计一个学生管理信息系统,包括输入、显示、排序、插入、删除、查询等功能,旨在简化信息管理,支持学号、姓名和成绩操作。程序结构清晰,涉及菜单选择、结构体定义、功能函数实现和主函数调用。
摘要由CSDN通过智能技术生成

《c语言课程设计-学生管理信息系统设计》

设计任务

1.选题意义

设计该项目可以简化学生信息管理的流程,使管理更加简便、清晰。本程序包含输入记录、显示记录、按成绩排序、插入记录、删除记录(按姓名查找并删除)、查找并显示记录(按姓名查找)、输出系统信息等各种学生管理系统所需功能,基本能够满足管理需求。

2.设计目标

设计该程序是为了实现更简洁的学生信息管理,满足管理学生学号、姓名和成绩等信息的要求。

系统具体功能如下:

(1)输入记录 ——输入的记录包括:学生学生证号、姓名、成绩;

(2)显示记录 ——显示所有以上输入记录或根据成绩排序后的记录;

(3)按成绩排序 ——根据学生成绩由大到小排序;

(4)插入一条记录 —— 插入一条包含学生信息的记录;

(5)删除一条记录 ——查找姓名,并删除该学生记录;

(6)查找 ——按照学生姓名查找并显示该学生信息;

(7)输出统计信息 ——输出包含:记录总数、最高分、最低分、平均分和挂科学生信息等;

(8)读取信息 ——将保存与VC同一个盘的文件中的学生记录读取出来;

(9)存储信息 ——将学生信息保存指定文件中;

(10)退出程序。

程序设计与实现

1.程序结构

该系统首先定义了包含:学生学号、姓名、成绩的结构体。然后定义了菜单函数供用户选择,紧接着定义了实现以上各功能的子函数。最后是主函数,主函数通过switch语句实现对各子函数的调用。

图1. 系统程序功能组成框图

2. 数据描述——结构体类型定义说明

说明:该程序定义了一个结构体,结构体变量名为student,结构体数组包含:(char型)学号、(char型)学生姓名以及(int型)学生成绩。该结构体如下:

typedef struct /*定义结构体数组*/

{

char num[10]; /*学号*/

char name[20]; /*姓名*/

int score; /*成绩*/

}Student;

Student stu[80]; /*结构体数组变量*/

3.函数功能说明

程序包含11个函数,除主函数外,还有:菜单函数—int menu_select()、输入记录函数—int input(student stud[],int n)、显示所有记录函数—void Display(student stud[],int n)、排序函数—void sort_by_score(student stud[] ,int n)、插入记录函数—int Insert_a_record(student stud[] int n)、删除记录函数—int Delete_a_record(student stud[],int n)、查询函数—void Query_a_record(student stud[] ,int n)、统计系统信息函数—void Statistic(student stud[],int n)、读取信息函数—int AddfromText(stuent stud[],int n)、存储信息函数—void WritetoText(student stud[],int n)等10个辅助系统完成各项功能函数。各函数详细说明如下:

(1)主函数——void main()

算法描述:利用无限次循环for(;;)和switch()实现对各函数的调用,系统根据输入的数字选项来调用相应的函数,实现相应的功能。

(2)菜单函数——int menu_select()

函数功能:使用者通过输入数字选项实现对各功能的使用。当运行完任一功能,返回运行界面时,也要用到该函数。

算法描述:使用do-while循环进行菜单选择,在循环内用getchar()读如所选择的序号,并且每次运行都运用system("cls")进行清屏。

(3)输入记录函数——int input(student stud[],int n)

函数功能:输入学生学号、姓名和成绩,输入后有一个提示语句——是否继续输入。根据需要选择Y:继续输入记录;选择N:停止输入。

算法描述:使用while循环和标准输入函数进行数据的输入。

(4)显示所有记录函数——void Display(student stud[],int n)

函数功能:将输入的所有记录显示在运行界面,或将按成绩排序后的记录显示在界面。

算法描述:使用for循环进行循环输出,循环内运用if语句使十条数据可以实现暂停功能。其中还包含了一些辅助的使界面更简洁、清晰的语句

(5)排序函数——void sort_by_score(student stud[] ,int n)

函数功能:按学生成绩由高到底的顺序进行排序。

算法描述:运用简单冒泡法排序,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值