ImageVerifierCode 换一换
格式:DOCX , 页数:28 ,大小:312.05KB ,
资源ID:4152795      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4152795.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C++学生信息管理系统实验报告材料示例.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C++学生信息管理系统实验报告材料示例.docx

1、C+学生信息管理系统实验报告材料示例课程设计报告课程设计题目: 学生信息管理系统 学生姓名: 张鹏专 业: 软件工程(嵌入式)班 级: 1621806指导教师: 高 永 平 2017年 6 月 9 日一、需求分析:根据对学生信息管理的需要,建立一个“学生信息管理系统”,以方便对学生信息数据的录入、修改、删除和查询功能。、要求完:1.有菜单界面可以对功能进行选择;2.能录入姓名、性别、学号、班级和电话号码等学生信息并保存到文件中;3.能根据学生的学号进行排序;4.能根据学生的学号对学生的信息进行修改;5.能根据学生的学号对学生的信息进行删除;6.能根据学生的学号、姓名和班级等对学生信息进行查询;

2、7.能根据班级对学生人数进统计。二、总体设计:根据以上分析,本系统主要包括:1.从键盘录入学生个人信息,并保存到文件中;2.按学号对学生信息进行排序3.按学号对学生信息进行修改;4.按学号对学生信息进行删除;5.按学号对学生信息进行查询;6.按姓名对学生信息进行查询;7.按班级对学生信息进行查询;8.结束当前程序; 等8大功能,系统主要定义了1个类和16个函数以实现各个功能:(1)主函数main():调用录入、查找、修改、排序、统计、删除等函数对学生成员信息进行处理。(2)定义类class student:用于定义成员结构体数组。(3)类中构造函数student():对类中各项私有成员进行传值

3、。(4)类中输入运算符重载函数operator ():方便对类的对象输入。(5)类中输出运算符重载函数operator ():方便对类的对象输出。(6)获取函数getnum():方便在类外对类中的私有成员num的数据进行调用。(7)获取函数getname():方便在类外对类中的私有成员name的数据进行调用。(8)获取函数getban():方便在类外对类中的私有成员ban的数据进行调用。(9)录入函数 enter():从键盘输入学生个人信息,并保存到文件中。(10)查找函数 search_num():按学号查找学生个人信息。(11)查找函数 search_name():按姓名查找学生个人信息。

4、(12)查找函数 search_ban():按班级查找学生个人信息。(13)修改函数 changr():按学号修改学生个人信息,保存的文件中。(14)删除函数 del():按学号删除学生个人信息,保存到文件中。(15)排序函数sort():按学号对学生个人信息进行排序。(16)统计函数count():按班级对学生人数进行统计。程序功能结构图如图1所示:图1程序功能结构图如图三、详细设计。本系统有一个主函数,8个功能模块,每个功能模块函数都是由主函数调用,分别说明如下:(1)主函数main():调用录入、查找、修改、排序、统计、删除等函数对学生成员信息进行处理。主函数流程图如图2所示:图2主函数

5、流程图(2)键盘输入函数流程图:从键盘输入学生个人信息,并保存到文件中。流程图如图3所示:图3键盘输入函数流程图(3)排序函数流程图:按学号对学生个人信息进行排序。流程图如图4所示:图4排序函数流程图(4)信息修改函数流程图:由用户输入需要修改的成员的学号,在现有的学生信息中查询是否有此学生信息的存在,查到输出该学生的全部信息,没查到则输出“学号为XX的学生不存在!”信息。流程图如图5所示:图5信息修改函数流程图(5)信息删除函数流程图:由用户输入需要删除的成员的学号,在现有的学生信息中查询是否有此学生信息的存在,查到删除该学生的全部信息,没查到则输出“学号为XX的学生不存在!”信息。流程图如

6、图6所示:图6信息删除函数流程图(6)学号查询函数流程图:由用户输入需要查询的成员的学号,在现有的学生信息中查询是否有此学生信息的存在,查到输出该学生的全部信息,没查到则输出“学号为XX的学生不存在!”信息。流程图如图7所示:图7学号查询函数流程图(7)姓名查询函数流程图:由用户输入需要查询的成员的姓名,在现有的学生信息中查询是否有此学生信息的存在,查到输出该学生的全部信息,没查到则输出“姓名为XX的学生不存在!”信息。流程图如图8所示:图8姓名查询函数流程图(8)班级查询函数流程图:由用户输入需要查询的成员的班级,在现有的学生信息中查询是否有此学生信息的存在,查到输出该学生的全部信息,没查到

7、则输出“班级为XX的学生不存在!”信息。流程图如图9所示:图9班级查询函数流程图(9)按班级统计函数流程图:由用户输入需要查询的成员的班级,在现有的学生信息中查询是否有此学生信息的存在,查到即对该班级人数进行统计,没查到则输出“班级为XX的学生不存在!”信息。流程图如图10所示:图10按班级统计函数流程图四、测试结果。(1)程序运行主菜单如图11所示:图11(2)从键盘上输入学生人数和学生信息如图12所示:图12(3)按学号修改如图13所示:图13(4)按学号删除如图14:图14(5)按学号查找如图15:图15(6)按姓名查找如图16:图16(7)按班级查找如图17:图17(8)按班级统计人数

8、如图18:图18(9)按学号进行排序如图19:如图19五、软件操作使用说明书。本软件采用命令行对话方式进行操作,运行后出现主界面如上图所示,然后按菜单提示操作即可。六、总结。经过一个星期的不断上机实践练习,我对c+有了更进一步的认识和了解,学好它重在实践,要通过不断的上机操作不断的进行操作和试运行才能更好地掌握它,通过这次实践,我发现了自己的许多不足:我对各种循环的理解深度还不够,对字符成员调用还不是很熟练,对指针的理解还是不透彻,以及对解决问题的想法不够全面。这些不足,在这次实践中都有所提高,并且对这些不足我都会在后续的学习中努力补足。七、代码: #include#include#inclu

9、de#define M 5000using namespace std;class studentpublic: student() student(char na10,char se10,int n,int b,char t12):num(n),ban(b) strcpy(sex,se); strcpy(name,na); strcpy(tel,t); friend istream & operator (istream & is,student & s) iss.names.sexs.nums.bans.tel; return is; friend ostream & operator (

10、ostream & os,student & s) oss.name s.sex s.num s.ban s.telendl; return os; int getnum() return num; int getban() return ban; char *getsex() char *s=new charstrlen(sex); s=sex; return s; char *getname() char *p=new charstrlen(name); p=name; return p; char *gettel() char *t=new charstrlen(tel); t=tel;

11、 return t; private: char name10; char sex10; int num,ban; char tel12;int menu() char s80; int c; cout* 主 菜 单 *endlendl; cout | 0.退出当前程序 | nendl; cout | 1.输入学生信息 | nendl; cout | 2.根据学号查询 | nendl; cout | 3.根据姓名查询 | nendl; cout | 4.根据班级查询 | nendl; cout | 5.根据学号排序 | nendl; cout | 6.按班级计人数 | nendl; cout

12、| 7.根据学号删除 | nendl; cout | 8.根据学号修改 | nendl; cout-endl; cout 输入您的菜单选项编号(0-8):endl; cout Designed by Peng8) cout输入错误,请重新输入!:; else break; return c;int enter(student t) int i,n; system(cls); cout 请输入学生信息条数n; cout 请输入学生信息nendl; cout姓名 性别 学号 班级 联系电话endl; fstream fs; fs.open(c:item.txt,ios:out); for(i=0;

13、iti; fsti; fs.close(); getchar(); return n;void search_num(student t,int n) int i,nu,temp=-1000; system(cls); cout请输入查找学生的学号:nu; for(i=0;in;i+) if(nu=ti.getnum() cout该学生信息为:endl姓名 性别 学号 班级 联系电话endl; coutti; temp=i; if(temp=-1000) coutendlendl学号为 nu 的学生不存在!endl; getchar();void search_ban(student t,in

14、t n) int i,ba,temp=-1000; system(cls); cout请输入查找学生的班级号:ba; cout该学生信息为:endl姓名 性别 学号 班级 联系电话endl; for(i=0;in;i+) if(ba=ti.getban() coutti; temp=i; if(temp=-1000) coutendlendl班级为 ba 的学生不存在!endl; getchar();void search_name(student t,int n) int i,temp=-1000; char na20; system(cls); cout请输入查找学生的姓名:na; for

15、(i=0;in;i+) if(strcmp(na,ti.getname()=0) cout该学生信息为:endl姓名 性别 学号 班级 联系电话endl; coutti; temp=i; if(temp=-1000) coutendlendl姓名为 na 的学生不存在!endl; getchar();void sort(student t,int n) student p;int s; system(cls); cout请选择升序或降序(1或2):s; if(s=1) cout按学号排序(升序)完成如下:endl; for(int i=0;in-1;i+) for(int j=0;jtj+1.

16、getnum() p=tj; tj=tj+1; tj+1=p; cout姓名 性别 学号 班级 联系电话endl; for(int a=0;an;a+) coutta; if(s=2) cout按学号排序(降序)完成如下:endl; for(int i=0;in-1;i+) for(int j=0;jn-1-i;j+) if(tj.getnum()tj+1.getnum() p=tj; tj=tj+1; tj+1=p; cout姓名 性别 学号 班级 联系电话endl; for(int a=0;an;a+) coutta; getchar();void count(student t,int

17、n) int i,c,temp=-1000; system(cls); fstream fs; fs.open(c:item.txt,ios:in); cout请输入想统计人数的班级:c; int s=0; for(i=0;iti; if(c=ti.getban() s+; temp=i; cout该班级人数为:sendl; fs.close(); if(temp=-1000) coutendlendl班级为 c 的学生不存在!endl; getchar();void change(student t,int n) int id,i,temp=-1000,run=0; system(cls);

18、 cout请输入要修改的学生的学号:id; fstream fs; fs.open(c:item.txt,ios:in|ios:out); for(i=0;in;i+) if(id=ti.getnum() cout修改前该学生信息为:endl姓名 性别 学号 班级 联系电话endl; coutti; temp=i; run=2000; fs.close(); if(run=2000) fs.open(c:item.txt,ios:in|ios:out); cout请输入你修改该学生的信息为:endl姓名 性别 学号 班级 联系电话ti; fsti; fs.close(); cout修改成功!e

19、ndl; if(temp=-1000) coutendlendl姓名为 id 的学生不存在!endl; getchar();int del(student t,int n) int ber,temp=-1000,run=0; int i,j,nu; system(cls); cout请输入要删除的学生的学号:ber; for(i=0;in;i+) if(ber=ti.getnum() temp=i; run=2000; if(run=2000) cout删除中.endl; cout删除后数据为:endl姓名 性别 学号 班级 联系电话endl; fstream fs; fs.open(c:it

20、em.txt,ios:out); for(int x=0;xn;x+) if(ber=tx.getnum() for(j=0;jn;j+) if(j=x) continue; else fstj; couttj; nu=n-1; fs.close(); if(temp=-1000) coutendlendl学号为 ber 的学生不存在!endl; getchar(); return nu; void main() student sM; int length; for(;) system(cls); switch(menu() case 0:exit(0);break; case 1:length=enter(s);break; case 5:sort(s,length);break; case 8:change(s,length);break; case 7:length=del(s,length);break; case 2:search_num(s,length);break; case 3:search_name(s,length);break; case 4:search_ban(s,length);break; case 6:count(s,length);break; cout按回车返回主菜单.endl; getchar(); return;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1