- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
某高校学籍管理系统设计书
2.设计说明
2.1 问题描述与功能设计
1.问题描述:
设计一个高校学籍管理系统,能够处理学生个人的学籍信息、按学生学籍号进行排序,在实现各功能时要有一定的异常处理机制,给用户适当的操作错误提示,要求将学生个人的学籍信息保存在文件中。
2. 功能要求:
1增加某新学生的信息
2删除某学生的信息
3修改某学生的信息
4输出符合某种特征的学生信息列表(选做以下任意模块)。
按名称升序(降序)输出学生列表
按某门成绩升序(降序)输出学生列表
按学号升序(降序)输出学生列表
5根据提供的学生姓名输出该学生的信息
6以下两个模块任选一个
输出特定班级的学生信息列表
输出特定学号范围的学生信息列表
2.2 算法与数据结构
算法:
本程序主要是用了链表的方式来组织数据的,每一个数据都是保存在链表中的,并且都要通过指针来连接。还用了类来实现各种功能。充分体现了面向对象的优越性。
数据结构:
本程序是包括了对数据集合中的各元素以各种方式进行操作,包括删除、查找、排序等。
数据的组织方式也有所不同。student类里面存放的是所要用到的各种数据类型,及成员函数,而student类的实现里面主要是存放着定义好的函数实现。
2.3 函数定义
void content();//功能菜单
student * creatlist(int n);//创建链表
student * addlist(int n,student*head); //增加学生
student * deletlist(int n,student*head);//删除学生
void outputlist(student * head);//输出学生信息
int findlist(student * head);//按名字查找学生个人信息
student * changelist(int n,student*head);//修改学生个人信息
void sortList( int n,student *head);//把学生按照学号进行排序
void classstudent(student * head);//输出特定班级的学生信息
界面设计
测试
1. 输出学生信息
2. 删除学生信息
3. 把学生按照学号进行排序
4按名字查找学生个人信息
4输出特定班级的学生信息
5修改学生个人信息
6 增加学生信息
总结
经过本次的课程实验的制作,加深了我对C++中链表的认识,也学会了如何运用链表。感觉自己又进步了一点点,并进一步激发了对高级语言学习的兴趣,体验到了编程的乐趣。
但在刚开始编写源代码的同时也感觉到自己本身的不足,看到题目后不知道如何下手,心里就连基本的函数模型也勾画不出,严重打击了编写程序的自信心。归根结底还是自己对链表的认识也很模糊,课前的预习和课后的复习没有做好,意识到自己的学习习惯上的严重不足。
经过上网查询有关资料加上以书本为模板,也向寝室室友的请教,逐渐认识了链表的本质,慢慢的写出了函数的雏形,通过多次的查错改错,程序最终可以运行了。但经过输入数值进行调试的时候,发现达不到预期目的。然后通过对各种功能模块的修改,程序最终达到了预期目标,成就感高涨,心里的石头也终于落了地,踏破铁鞋无觅处,得来全不费工夫。
总而言之,收获颇多,一步一个脚印,为自己成为一个合格的软件工程师打下基础。
参考文献
[1] 钱能. C++程序设计教程[M]. 北京:清华大学出版社,2005:315-324,415-418,423.
[2] 刘瑞新. Visual C++面向对象程序设计教程[M]. 北京:机械工业出版社,2005.
[3] 王挺等 C++程序设计教程[M]. 北京:清华大学出版社。
流程图
附录A
#includeiostream.h
#includestring.h
struct student
{
char name[20];
int English,Math,Physical;
int Class;
int Grade;
int Number;
student*next;
};
void content();
student * creatlist(int n);
student * addlist(int n,student*head);
student * deletlist(int n,student*head);
void outputlist(student * head);
int findlist(student * head);
student * changelist(int n,student*head);
void sortList( int n,student *head)
文档评论(0)