《高级语言程序设计(c语言)》课程设计。
湖南涉外经济学院计算机科学与技术学部。
2023年12月。
目录。1系统简介 2
2需求分析 2
3概要设计 2
3.1系统功能结构图 2
3.2重要数据的数据结构设计 2
3.3函数设计 3
3.4小组成员分工 4
4、详细设计 4
5、调试分析 7
6、用户手册 8
7、附录 8
设计一个基于结构体数组的学生学籍管理系统, 能实现对学生学籍信息进行
录入、修改、删除、查询和输出等基本操作。
1) 学籍管理系统应实现以下功能:
2) 能录入学生的基本信息,包括学号、姓名、专业、年级、性别和出生日期信息,保存到结构体数组中。
3) 能根据输入的学号查找学生,进行信息的修改。
4) 能根据输入的学号从结构体数组中删除学生的记录。
5) 实现查询功能, 能根据输入的学号或年级在屏幕上显示相应的学生信息。
6) 能在屏幕上以列表的方式输出所有学生的信息。
根据项目的开发要求,本系统划分成六个主功能模块:录入学生信息模块、
修改学生信息模块、删除学生信息模块、查询信息模块、输出模块和系统退出模
块。系统功能结构图如图1所示。
根据项目的开发要求,本系统划分成六个主功能模块:
图1 系统功能结构图。
学生学籍的记录项用结构体stumessage 表示, 包括6个属性, stuno、 name、
spec、grade、sex、birthday 分别代表学生的学号、姓名、专业、年级、性别和
出生日期,其中 birthday 类型为自定义的结构体类型date。
struct stumessage{
char stuno[11]; 学号
char name[9]; 姓名
char spec[21专业
int grade年级
char sex性别
struct date birthday; /出生日期
日期类型 date 包括三个属性,分别代表年、月、日。
struct date{
int year; /年
int month; /月
int day; /日
学籍管理系统程序采用了结构化程序设计的思想,由1个。h头文件和3个。c源文件组成。
程序中除了主函数外,共设计了以下14个函数,分别包含在3个。c源文件中。以下是这些函数的函数原型及功能设计。
1) void sysinfo(void);
功能:在屏幕上输出系统及版权信息并等待用户响应。
2) void menuofmain(struct stumessage stu)
功能:在屏幕上显示主菜单,接收用户选择并响应用户相应操作。
3) void append(struct stumessage stu)
功能:录入一条学生记录到记录数组的末尾。
4) void modify(struct stumessage stu)
功能:通过输入学号查询学生相应记录信息,如果存在在屏幕上输出相应学
生记录并通过重新输入的方法修改该学生的记录,否则输出没有找到相关记录。
5) void delet(struct stumessage stu)
功能:通过输入学号查询学生的相应记录信息,如果存在在屏幕上输出相应
学生记录,用户确认删除后调用 dellist() 函数将其删除,否则输出没有找到相
关记录。 6) void menuofsear(struct stumessage stu)
功能:在屏幕上显示查询子主菜单,接收用户选择并响应用户操作。
7) void listall(struct stumessage stu)
功能:在屏幕上以列表方式输出所有学生的信息。调用 printhead() 输出表
头,再调用 listone() 函数逐一输出各条记录。
8) void quit(void);
功能:退出菜单系统,并调用exit(0) 系统函数结束程序运行。
9) void searnum(struct stumessage stu)
功能:通过输入学号调用 numofsear() 函数查询学生的相应记录信息,如
果存在调用 printhead() 函数和 listone() 函数在屏幕上输出相应学生记录,否
则输出没有找到相关记录。
10) void seargrade(struct stumessage stu)
功能:通过输入年级查询学生的相应记录信息,如果存在在屏幕以列表方式。
(11) int numofsear(struct stumessage stu,char stunum)
功能:根据接收到的学生学号,在相应记录数组中进行查询,如果存在相应
记录,返加相应的数组下标,否则返回-1。
12) void printhead(void);
功能:在屏幕上显示输出列表的表头。
13) void listone(struct stumessage list);
功能:在屏幕上以行的方式显示输出一个学生的相关信息。
14) int dellist(struct stumessage stu,int i);
功能: 如果数组中存在下标为 i 的记录, 删除该记录并返回 1, 否则返回 0。
1、系统主函数main()设计。
如图2所示。
图2 系统主函数 main()设计。
2、主菜单模块函数menuofmain()设计。
3、录入学生信息功能模块函数append()设计
如图4所示。
4、修改学生信息功能模块函数modify()设计
略! 5、删除学生信息功能模块函数delete()设计。
6、查询菜单模块函数menuofsear()设计。
如图6所示。
图 6 函数 menuofsear()的设计图 7 函数 searnum()的设计
7、按学号查询功能模块函数searnum()设计
如图7所示。
8、按年级查询功能模块函数seargrade()设计
如图8所示。
9、输出学生信息功能模块函数listall()设计。
如图3所示。
本系统在vc6下编译调试通过,可顺利运行,各项功能达到设计要求。
本系统程序由一个。h头文件和三个。c源文件构成。
本系统是win32控制台程序,可在window和dos环境下运行,执行文件名称:
源程序文件名清单:
公用的常量和类型。
C语言课程设计报告书
學院。學院。实验题目学生信息管理系统。一 实验目的 1 本学期我们学习了c语言,由于初接触,学习有一定困难 于是学校给我们提供一次巩固提高的机会 课程设计。该可程设计要求学生既动手又动脑,自学,查资料,独立实践。将本学期课本上的理论知识和实际有机的结合起来,锻炼学生实际分析问题和解决问题的能力,提高...
C语言课程设计报告书
课程名称 学生信息管理系统。一 设计目的 1 本学期我们学习了c语言,由于初接触,学习有一定困难 于是学校给我们提供一次巩固提高的机会 课程设计。该可程设计要求学生既动手又动脑,自学,查资料,独立实践。将本学期课本上的理论知识和实际有机的结合起来,锻炼学生实际分析问题和解决问题的能力,提高学生适应实...
C语言课程设计报告书
中国地质大学 武汉 姓名 王友琪。专业 地质学。学号 20131000518 指导老师 王茂才。1 课设题目简要介绍 已知文本文件中存放了报考某校研究生的考生相关信息 不超过5000人 具体数据及存放格式为 每行存放一个考生的数据,数据之间用空格分隔,共有8项,依次为 考号 姓名 报考专业编号 政治...