C++课程设计学生信息管理系统.doc
《C++课程设计学生信息管理系统.doc》由会员分享,可在线阅读,更多相关《C++课程设计学生信息管理系统.doc(11页珍藏版)》请在三一办公上搜索。
1、 C+课程设计 学生信息管理系统姓 名: 汪 志 成 学 号: 09102211 专 业: 信息与计算科学学 院: 理 学 院 指导老师: 日 期: 2012 . 12 . 12 学生管理系统C+课程设计报告概述 C+课程设计是实践性教学中的一个重要环节,它以C+教程课程为基础,是一门独立于课程之外的特殊课程。课程设计是让同学们对所学的课程更全面的学习和应用,理解和掌握课程的相关知识。C+教程是一门重要的专业基础课,是计算机理论和应用的核心基础课程。C+课程设计,要求学生在选择结构、循环结构以及算法方面的应用,加深对课程基本内容的理解。同时,在程序设计方法以及上机操作等基本技能和科学作风方面受
2、到比较系统和严格的训练。题目描述设计一个学生管理系统,要求能输入学生的信息,学生包含以下信息:姓名、学号、性别、出生年月、入学年份、院系。对学生信息能进行查询、修改、插入、删除等功能,并制作一个类似菜单的界面。由于学生管理系统中有学生的重要信息,为确保学生信息的安全性,需要设计一个登录系统才能进入菜单界面,只有登录后才能对系统中学生信息的录入、查询、修改、插入、删除等操作。查询功能需要分总体查询和条件查询;修改功能能修改学生单项信息和全部信息;插入功能能将新来的学生信息插入到指定位置;为了学生信息的误删,设计一个确认删除机制。系统分析这是一个学生信息管理系统,需为其设计一个功能的界面式菜单,通
3、过菜单对其各项功能一目了然,并通过if条件选择结构的设计,对各项功能按模块实现,并用while循环语句对各个模块完美的配合实现其界面的循环和跳转,并运用的C+中的特有的string、bool型数据,使得程序的设计更加完美。系统需要模拟学生信息管理系统的录入、查询、修改、插入、删等各项功能。各项功能模块如下:1、 录 入 2、查 询 3、修 改 4、 插 入 5、删 除 0、退 出 从主菜单中选择各项功能,进入相应的子菜单:录入功能支持录入单个学生信息和多个学生信息,完成录入信息后返回主菜单;查询功能支持总体查询和条件查询,查询完毕后可以选择返回主菜单;修改功能能对某个学生的各项信息进行单一修改
4、,也可以修改某个学生的全部信息,成功修改后返回主菜单,若没有找到需要修改的学生信息,可以选择继续修改或返回主菜单;插入功能支持单个插入和多个插入,插入是指将新来的学生信息插入到指定的位置,插入完毕后返回主菜单;删除功能支持单个删除和多个删除,删除学生信息会严重影响学生信息安全的操作,为确保学生信息的安全,采用了删除确认机制,只有确认后才进行删除;退出功能是结束整个循环,退出学生信息管理系统,同样采用了退出确认机制,只有确认后才会退出系统。并且每个子功能菜单中都有返回项,即使选错功能后能随时返回主菜单而不执行而任何操作,这样使系统更加完善。详细设计1、 录入学生信息在成功登陆学生信息管理系统后,
5、系统初始的学生信息为空,无法进行各功能的使用与实现,所以需要先录入学生的基本信息。学生基本信息包括:学生姓名、学生学号、性别、出生年月、入学年份、院系等六项信息。录入学生后,系统自定义给予学生一个序号,该序号与学生信息录入系统的先后顺序有关,序号的多少表示当前学生系统中已录入学生的个数。对于有同名或同学号的一些操作,都将是根据序号优先原则,比如修改、删除等功能。学生人数由变量n控制,每当录入一个学生信息时,n就会自加1。初始时n=0表示当前没有任何学生信息。多个录入则是对单个录入执行的一个for循环语句。/录入部分代码实现如下:n=n+1;coutnamen;coutnumn;coutyear
6、nmonndayn;coutsexn;coutdaten;coutyuann;coutendl 已成功录入 endl;2、 查询学生信息当没有任何学生信息即n=0时,将会无法查询;总体查询查询当前已录入的全体学生信息,学生按录入的先后即系统给定的序号输出,并有一个整体的列表,使得各个学生的信息一目了然。条件查询针对用户给定的条件(如某个学号、姓名等),在系统中逐一进行查找,查找到符合相应条件的学生则给予输出,若没有找到任何相符的学生信息,系统则给出没有找到相应学生的报告信息。/总体查询部分代码实现如下:for(i=1;i=n;i+)cout |setw(3)i |setw(9)numi |se
7、tw(9)namei |;if(sexi=1)cout 男 ;else if(sexi=2)cout 女 ;else cout未知;cout| setw(4)yeari.setw(2)moni.setw(2)dayi |setw(6)datei |setw(9)yuani |endl;/条件查询部分代码实现如下:for(i=1;i=n;i+)if(chaxun=numi|chaxun=namei|chaxun=yeari|chaxun=datei|chaxun=yuani)a=1;cout |setw(3)i |setw(9)numi |setw(9)namei |;if(sexi=1)cou
8、t 男 ;else if(sexi=2)cout 女 ;else cout未知;cout| setw(4)yeari.setw(2)moni.setw(2)dayi |setw(6)datei |setw(9)yuani |endl;3、 修改学生信息进入修改子菜单后,首先选择要修改的选项,如修改学号或者姓名等,选择修改项后,然后指定要修改的学生的姓名或者学号,然后系统会自动匹配,如果系统没有找到相应的学生的姓名或学号,系统将反馈没有找到的相应信息,无法进行修改;如若找到后,将会进行修改,请输入修改后的信息即可,修改完成后,系统将对该学生的信息进行更新。修改中提供全部修改功能项,使得修改更加完
9、善与方便实用。/修改部分代码实现如下:couta;if(a=0)cout 返回主菜单界面 7)cout 输入不正确,请重新输入endl;f1=true;elsecoutchaxun;m=0;for(i=1;i=n;i+)if(chaxun=namei|chaxun=numi)m=i;i=n+1;if(m=0)cout 没有找到相应学生的信息,无法进行修改endl;f1=true;else if(a=1)coutnamem;else if(a=2)coutnumm;else if(a=3)coutsexm;else if(a=4)coutyearmmonmdaym;else if(a=5)cou
10、tdatem;else if(a=6)coutyuanm;else if(a=7)coutnamem;coutnumm;coutyearmmonmdaym;coutsexm;coutdatem;coutyuanm;if(m!=0)cout 已成功修改 endl;4、 插入学生信息插入功能与录入功能有些相似,都具有录入学生信息的作用,但是插入功能的区别在于,插入能使录入的学生信息插入到指定的位置,这个位置是指系统的序号,如系统已经有5个学生的信息了,如果是录入一个新的学生信息,系统将会将这个学生序号定为6,即在前面5个学生的后面,而插入则可以插入的这个人中的任何顺序,输入插入位置为1则插入到第一
11、号位置,但是果然插入的位置大于5(当前学生的个数),为了是学生的序号连续,系统将强制转化为6,即在五个学生的后面。而多个插入则是由第一个插入的学生决定,如果出入3个,插入位置为3,则这三个学生的位置分别为3、4、5,而原来3、4、5的则变为6、7、8的位置,其基本原理与单个相似,插入是将要插入的该位置以及之后的学生信息相应的往后移动,信息移动完成后,要插入的位置的学生信息为空,然后输入学生的信息即赋值给该位置,然后完成插入,然后学生的个数同样会自加1。/插入部分代码实现如下:coutm;if(m=0)m=1;else if(mn)m=n+1;if(m=m;i-)namei+1=namei;nu
12、mi+1=numi;yeari+1=yeari;moni+1=moni;dayi+1=dayi;sexi+1=sexi;datei+1=datei;yuani+1=yuani;n=n+1;coutnamem;coutnumm;coutyearmmonmdaym;coutsexm;coutdatem;coutyuanm;cout 已成功插入 endl;5、 删除学生信息删除学生功能是输入要删除学生的学号或姓名,系统自动寻找与之匹配的学生,若没有找到将无法执行删除操作,若找到后,将会进入删除确认机制,这是为了确定学生的信息安全,确保不会被误删而丢失数据。删除功能的实现是将将要删除的学生序号找到,从
13、该序号开始,后一个学生的信息依次赋值给前一个学生,直到最后一个学生赋值给倒数第二个学生终止,并且学生数会自减1,多个删除与单个删除基本相似,利用循序即可实现。/删除部分代码实现如下:coutchaxun;m=0;for(i=1;i=n;i+)if(chaxun=namei|chaxun=numi)m=i;i=n+1;if(m=0)cout 没有找到相应学生的信息,无法进行删除endl;f1=true;else coute;if(e=Y|e=y)f0=false;else if(e=N|e=n)cout 已取消删除该学生信息endl;f1=true;f0=false;else cout 输入错误
14、,请重新输入(Y 确定/N 取消):;while(e=Y|e=y)e=e;for(i=m;i=n;i+)namei=namei+1;numi=numi+1;yeari=yeari+1;moni=moni+1;dayi=dayi+1;sexi=sexi+1;datei=datei+1;yuani=yuani+1;n=n-1;cout 已成功删除 endl;6、 登陆学生信息管理系统因为学生系统含有学生的重要信息,并且能对学生信息进行修改、删除等操作,所以将学生管理系统设定为一个加密系统。此处,为了方便演示,账号随意输入,密码定为2012./登陆部分代码实现如下:while(f0)coutendl
15、chaxun;coutchaxun;if(chaxun=2012)f0=false;else cout 账号或密码不正确,请重新输入endl;coutendl 登录成功,欢迎进入主菜单界面endl;7、 退出学生信息管理系统退出系统即终止整个循环即可。修改总循环的bool值为false,并进入一个退出确认机制,如果取消则不会退出返回到主菜单,如果确认则会退出结束本程序。/退出部分实现代码如下:if(k=0)f0=true;while(f0)f0=false;coute;if(e=y|e=Y) f=false;else if(e=n|e=N)coutendl;else f0=true; 总结 通
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 课程设计 学生 信息管理 系统

链接地址:https://www.31ppt.com/p-2384417.html