学生信息管理系统txt

上传人:孙哥 文档编号:155670057 上传时间:2022-09-24 格式:DOCX 页数:20 大小:90.74KB
收藏 版权申诉 举报 下载
学生信息管理系统txt_第1页
第1页 / 共20页
学生信息管理系统txt_第2页
第2页 / 共20页
学生信息管理系统txt_第3页
第3页 / 共20页
资源描述:

《学生信息管理系统txt》由会员分享,可在线阅读,更多相关《学生信息管理系统txt(20页珍藏版)》请在装配图网上搜索。

1、2、系统简介学生信息管理系统完成时间 2013 年 5月 27日1、 编程目的(1) 对C+语法、基础知识进行综合运用,编写具有一定综合应用价值的稍大一些的程序,掌握面向对象程序设计(OOP的思想,培养学生使用面向对象的程序设计思想分析和解决实际问题的能力;(2) 掌握在Visual C+集成开发环境下编辑、编译、链接和运行一个 C+4程序的基本方法;(3) 加深对所学知识的理解和掌握;(4) 培养文档报告书面表达和思辨的能力。利用面向对象的方法以及 C+的编程思想来完成学生信息管理系统的设计。学生信息 包括:学号、姓名、性别、班级、联系电话等等信息(也可自主设计其他的学生相关信息) 要求实现

2、学生信息的增加、修改、查询、删除、浏览等基本功能。学生信息保存在文件中, 要求文件中至少要记录 10位学生信息的相关数据。3、编程思路本程序建立了带表头节点的链表类、菜单类、主函数。菜单类包括增 加学生信息、删除信息、查找、浏览等功能。链表类包括建立链表和删除链表4、总体设计下表是根据程序画的基本结构图:建立链表5、关键技术说明运用了面向对象设计中的类和链表,类是逻辑上相关的函数与数据的 封装,它是对所要处理的问题的抽象描述。类实际上也就相当于用户自定义的类型,和基本数据类型的不同之处 在于,类这个特殊类型中同时包含了对数据进行操作的函数。链表类的基本操作应该包括:生成新节点、插入节点、删除节

3、点、访问 /修改节点数 据、遍历链表等。因此,在链表类中应该包含完成上述操作的成员函数, 以及为了实现这些函数而添加的一些辅助函数, 为了方便链表类对象间的 赋值,还应重载“=”运算符。另外,由于面向对象的封装特性,当然还 要提供一些接口函数。6、源代码#include #include class StuList;class Studentfriend StuList;private:char name9;char sex6;char add20;int number;Student *next;public:*sal=NULL,charStudent(char *val=NULL,char

4、*adl=NULL,int No=0)number=No;next=NULL;if(val!=NULL)strcpy(name,val);if(sal!=NULL)strcpy(sex,sal);if(adl!=NULL)strcpy(add,adl);class StuList / 带表头节点的链表类private:Student *head,*current;int count;public:StuList()current=head=new Student;count=2003060;cout 链表已建立 endl;StuList()makeEmpty();delete head;cou

5、t 链表已删除 next!=NULL)p=head-next;head-next=p-next;delete p;current=head;将新元count=0;void StuList:add(char *value,char *salue,char *adl)/素 value 插入到最后Student *newStu;newStu=new Student(value,salue,adl);while(current-next!=NULL)current=current-next;newStu-next=current-next;current=current-next=newStu;new

6、Stu-number=count+1;count+;coutvalue 已经加入表 next!=NULL)if(node-number=No-1)break;node=node-next; newStu-next=node-next; newStu-number=No;node=node-next=newStu;Student *p=node-next; while(p!=NULL)p-number+; p=p-next; count+;coutvalue 已经插入 next; while(q!=NULL)if(q-number=No)break; q=q-next;if(q=NULL)cou

7、t 没找到! next=q)break; p=p-next; p-next=q-next;delete q; count-;p=p-next; while(p!=NULL)p-number-;p=p-next;coutvv学号vvNovv已移除next=NULL)/ 链表为空cout 链表为空! endl;return;性别 地namecout 学号姓名址next;while(p-next!=NULL)coutnumbersex addnext;coutnumber name sex addnext;while(current!=NULL)if(strcmp(current-name,valu

8、e)=0)break;current=current-next;if(current=NULL)cout 没找到! endl;else cout 找 到 学 号 为 numbervalue 在链表里 endl;class Menu/ 菜单类char *c1,*c2;public:Menu()c1= c2=*n;void show()coutendl;coutc1-*-*-*-*-*-*-*-*-*-*-*-*菜单* * * * *-*-*-*-*-*-*-*c2;coutc1c2;coutc1 1.建立链表2.加入学生资料c2;coutc1 3.插入一个学生4.移除一个学生c2;coutc1

9、5.显示该表6.按姓名查找c2;coutc1 7.学生总数8.清空链表c2;coutc1 9.显示菜单0.退出程序c2;coutc1c2; coutc1-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-c2;coutendl;void main()char cmd;StuList *list=NULL;Menu menu;menu.show();docoutendlcmd;if(list=NULL)/ 检查输入的命令是否合适while(cmd!=1 & cmd!=9 & cmd!=0)coutcmd;switch(cmd)/匹配命令cas

10、e (1):/ 建表list=new StuList;break;case (2):/ 加入学生到链表后char insname29,inssex26,insadd220;cout 请输入姓名,性别( male or female ) , 地 址。 insname2;cininssex2;cininsadd2;list-add(insname2,inssex2,insadd2);break;case (3):/ 按学号插入一个学生char insname39,inssex36,insadd320;int insnum;coutinsnum;coutinsname3;coutinssex3;co

11、utinsadd3;list-insert(insnum,insname3,inssex3,insadd3);break;case (4):/ 删除一个学生int rem;coutrem;list-remove(rem);break;case (5):/ 显示所有学生list-print();break;case (6):/ 按姓名查找一个学生char sear9;coutsear;list-searchStu(sear);list-print();break;case (7):/学生总数cout共 有 length() 个 学 生makeEmpty();cout链表为空 endl;break

12、;case (9):/显示菜单menu.show();break;case (0):/退出if(list=NULL) break;char temp;couttemp;if(temp=y)list-StuList();list=NULL;else cmd=10;break;default:cout 请输入菜单中的命令!endl;while(cmd!=0);7、 测试(程序有相似只列出部分程序) 。()(1)开始界面:2)加入学生资料:本程序可以添加很多的学生资料(加一个为例)3)插入一个学生:4)移除一个学生信息:5)显示学生人数:由于移除一个学生,下面的学生学号自动升一位(6)按姓名查找:8、 系统评价及展望 优点:(1)界面友好(良好的人机交互) ,提供菜单选项,并给出足够的选择信 息以及提示信息。(2)程序具有一定的健壮性,不会因为用户的输入错误引起程序运行错误而中 断执行。(3)源程序要加适当的注释,使程序容易阅读;(4)可无限添加学生资料 缺点:(1)学生学号是系统默认的,如果要更改学号要重新编写程序。(2)本程序要进行操作,首先要建立链表,否则不能进行。( 3)界面中的 9 操作与彩单重复 展望:在此程序基础之上还可以进行添加其他功能, 例如添加学生的成绩。 且不 会对原程序任何影响。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!