版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、WORD格式课程设计报告专业资料整理WORD格式课程设计题目:学生信息管理系统学生* :X鹏专业:软件工程嵌入式班级:1621806指导教师 :高 永 平2021年6月9日专业资料整理WORD格式1 /26专业资料整理WORD格式目录一、需求分析:3二、总体设计:3三、详细设计。4四、测试结果。13五、软件操作使用说明书。18六、总结。18七、代码:18专业资料整理WORD格式2 /26专业资料整理WORD格式一、需求分析:根据对学生信息管理的需要,建立一个“学生信息管理系统 ,以方便对学生信息数据的录入、修改、删除和查询功能。 、要求完:1. 有菜单界面可以对功能进展选择;2. 能录入*、性
2、别、学号、班级和等学生信息并保存到文件中;3. 能根据学生的学号进展排序;4. 能根据学生的学号对学生的信息进展修改;5. 能根据学生的学号对学生的信息进展删除;6. 能根据学生的学号、*和班级等对学生信息进展查询;7. 能根据班级对学生人数进统计。二、总体设计:根据以上分析,本系统主要包括:1. 从键盘录入学生个人信息,并保存到文件中;2. 按学号对学生信息进展排序3. 按学号对学生信息进展修改;4. 按学号对学生信息进展删除;5. 按学号对学生信息进展查询;6. 按*对学生信息进展查询;7. 按班级对学生信息进展查询;8. 完毕当前程序;等 8 大功能,系统主要定义了 1 个类和 16 个
3、函数以实现各个功能: 1主函数 main(): 调用录入、查找、修改、排序、统计、删除等函数对学生成员信息进展处理。( 2定义类 class student: 用于定义成员构造体数组。( 3类中构造函数 student(): 对类中各项私有成员进展传值。( 4类中输入运算符重载函数 operator >>(): 方便对类的对象输入。( 5类中输出运算符重载函数 operator <<(): 方便对类的对象输出。( 6获取函数 getnum(): 方便在类外对类中的私有成员 num的数据进展调用。( 7获取函数 getname(): 方便在类外对类中的私有成员 name的
4、数据进展调用。 8获取函数 getban(): 方便在类外对类中的私有成员 ban 的数据进展调用。( 9录入函数 enter(): 从键盘输入学生个人信息,并保存到文件中。( 10查找函数 search_num(): 按学号查找学生个人信息。11查找函数 search_name():按*查找学生个人信息。12查找函数 search_ban():按班级查找学生个人信息。13修改函数 changr():按学号修改学生个人信息,保存的文件中。 14删除函数 del():按学号删除学生个人信息,保存到文件中。专业资料整理WORD格式3 /26专业资料整理WORD格式( 15排序函数 sort():
5、按学号对学生个人信息进展排序。( 16统计函数 count(): 按班级对学生人数进展统计。程序功能构造图如图1 所示:学生信息管理系统键保学信信学姓班人数盘存号息息号名级统输数排修删查查查计入据序改除询询询图 1 程序功能构造图如图三、详细设计。本系统有一个主函数, 8 个功能模块,每个功能模块函数都是由主函数调用,分别说明如下:( 1主函数 main():调用录入、查找、修改、排序、统计、删除等函数对学生成员信息进展处理。主函数流程图如图2 所示:专业资料整理WORD格式4 /26专业资料整理WORD格式开 始输出菜单输入操作选择cc=0c=1c=2c=3c=4c=5c=6c=7c=8退保
6、输学信信学姓班统出存入号息息号名级计系数数排修删查查查人统据据序改除询询询数继续操作否YN完毕图 2 主函数流程图( 2键盘输入函数流程图:从键盘输入学生个人信息,并保存到文件中。流程图如图 3 所示:专业资料整理WORD格式5 /26专业资料整理WORD格式开 始输入学生人数输入学生个人信息保存数据到文件中Y是否继续N完毕图 3 键盘输入函数流程图( 3排序函数流程图:按学号对学生个人信息进展排序。流程图如图 4 所示:专业资料整理WORD格式6 /26专业资料整理WORD格式开 始按学号进展学排序输出排序完成后的信息Y是否继续N完毕图 4 排序函数流程图 4信息修改函数流程图:由用户输入需
7、要修改的成员的学号,在现有的学生信息中查询是否有此学生信息的存在,查到输出该学生的全部信息, 没查到那么输出“学号为 *的学生不存在 ! 信息。流程图如图 5 所示:专业资料整理WORD格式7 /26专业资料整理WORD格式开 始翻开文件输入成员学号查询到否输出查到成员信息输出不存在成员信息输入修改成员信息关闭文件完毕图 5 信息修改函数流程图( 5信息删除函数流程图:由用户输入需要删除的成员的学号,在现有的学生信息中查询是否有此学生信息的存在,查到删除该学生的全部信息, 没查到那么输出“学号为 *的学生不存在 ! 信息。流程图如图 6 所示:专业资料整理WORD格式8 /26专业资料整理WO
8、RD格式开 始翻开文件读入学生信息输入删除学号Y查询到否删除此学生信息N输入不存在信息关闭文件完毕图 6 信息删除函数流程图( 6学号查询函数流程图:由用户输入需要查询的成员的学号,在现有的学生信息中查询是否有此学生信息的存在,查到输出该学生的全部信息, 没查到那么输出“学号为 *的学生不存在 ! 信息。流程图如图 7 所示:专业资料整理WORD格式9 /26专业资料整理WORD格式开 始翻开文件输入学生学号Y查询到否输出查到学生信息N输出不存在学生信息关闭文件完毕图 7 学号查询函数流程图( 7*查询函数流程图:由用户输入需要查询的成员的*,在现有的学生信息中查询是否有此学生信息的存在,查到
9、输出该学生的全部信息, 没查到那么输出“*为 *的学生不存在 ! 信息。流程图如图 8 所示:专业资料整理WORD格式10/ 26专业资料整理WORD格式开 始翻开文件输入学生*Y查询到否输出查到学生信息N输出不存在学生信息关闭文件完毕图 8 *查询函数流程图( 8班级查询函数流程图:由用户输入需要查询的成员的班级,在现有的学生信息中查询是否有此学生信息的存在,查到输出该学生的全部信息, 没查到那么输出“班级为 *的学生不存在 ! 信息。流程图如图 9 所示:专业资料整理WORD格式11/26专业资料整理WORD格式开 始翻开文件输入学生班级Y查询到否输出查到学生信息N输出不存在该班级学生关闭
10、文件完毕图 9 班级查询函数流程图( 9按班级统计函数流程图:由用户输入需要查询的成员的班级,在现有的学生信息中查询是否有此学生信息的存在,查到即对该班级人数进展统计,没查到那么输出“班级为* 的学生不存在 ! 信息。流程图如图 10 所示:专业资料整理WORD格式12/ 26专业资料整理WORD格式开 始翻开文件输入学生班级Y查询到否输出该班级的人数N输出不存在该班级学生关闭文件完毕图 10 按班级统计函数流程图四、测试结果。1程序运行主菜单如图11 所示:专业资料整理WORD格式13/ 26专业资料整理WORD格式图 112从键盘上输入学生人数和学生信息如图12 所示:图 123按学号修改
11、如图13 所示:专业资料整理WORD格式14/ 26专业资料整理WORD格式图 134按学号删除如图14:图 145按学号查找如图15:专业资料整理WORD格式15/ 26专业资料整理WORD格式图 156按*查找如图16:图 167按班级查找如图17:专业资料整理WORD格式16/ 26专业资料整理WORD格式图 178按班级统计人数如图18:图 189按学号进展排序如图19:专业资料整理WORD格式17/ 26专业资料整理WORD格式如图 19五、软件操作使用说明书。本软件采用命令行对话方式进展操作,运行后出现主界面如上图所示,然后按菜单提示操作即可。六、总结。经过一个星期的不断上机实践练
12、习,我对 c+有了更进一步的认识和了解,学好它重在实践,要通过不断的上机操作不断的进展操作和试运行才能更好地掌握它,通过这次实践,我发现了自己的许多缺乏:我对各种循环的理解深度还不够,对字符成员调用还不是很熟练, 对指针的理解还是不透彻,以及对解决问题的想法不够全面。这些缺乏,在这次实践中都有所提高,并且对这些缺乏我都会在后续的学习中努力补足。七、代码:#include<iostream>#include<fstream>#include<cstring>#define M 5000using namespace std;class studentpubli
13、c:student()student(charna10,charse10,intn,intb,char专业资料整理WORD格式18/ 26专业资料整理WORD格式t12):num(n),ban(b)strcpy(sex,se);strcpy(name,na);strcpy(tel,t);friend istream & operator >>(istream & is,student & s)is>>>>s.sex>>s.num>>s.ban>>s.tel;return is;frien
14、d ostream & operator <<(ostream & os,student & s)os<<<<" "<<s.sex<<" "<<s.num<<" "<<s.ban<<" "<<s.tel<<endl;return os;int getnum()return num;int getban()return ban;char *getsex
15、()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;return t;private:专业资料整理WORD格式19/ 26专业资料整理WORD格式char name10;char sex10;int num,ban;char tel12;int menu()char s80;int c;cout<<"*主菜单*"
16、<<endl<<endl;cout<<"|0.退出当前程序|n"<<endl;cout<<"|1.输入学生信息|n"<<endl;cout<<"|2.根据学号查询|n"<<endl;cout<<"|3.根据*查询|n"<<endl;cout<<"|4.根据班级查询|n"<<endl;cout<<"|5.根据学号排序|n"&
17、lt;<endl;cout<<"|6.按班级计人数|n"<<endl;cout<<"|7.根据学号删除|n"<<endl;cout<<"|8.根据学号修改|n"<<endl;cout<<"-"<<endl;cout<<"输入您的菜单项选择项编号(0-8):"<<endl;cout<<"Designed by Peng"<<end
18、l;for(;)gets(s);c=atoi(s);if(c>8)cout<<" 输入错误,请重新输入!:"elsebreak;专业资料整理WORD格式20/ 26专业资料整理WORD格式return c;int enter(student t)int i,n;system("cls");cout<<"请输入学生信息条数 "<<endl;cin>>n;cout<<"请输入学生信息 n"<<endl;cout<<" *
19、性别学号班级联系 "<<endl;fstream fs;fs.open("c:item.txt",ios:out);for(i=0;i<n;i+)cin>>ti;fs<<ti;fs.close();getchar();return n;void search_num(student t,int n)int i,nu,temp=-1000;system("cls");cout<<" 请输入查找学生的学号:"<<endl;cin>>nu;for(i=0
20、;i<n;i+)if(nu=ti.getnum()cout<<" 该学生信息为: "<<endl<<" * 性别 学号 班级 联系"<<endl;cout<<ti;temp=i;if(temp=-1000)cout<<endl<<endl<<" 学号为 "<<nu<<" 的学生不存在 !"<<endl; getchar();void search_ban(student t,in
21、t n)专业资料整理WORD格式21/ 26专业资料整理WORD格式int i,ba,temp=-1000;system("cls");cout<<" 请输入查找学生的班级号:"<<endl;cin>>ba;cout<<" 该 学生信息为: "<<endl<<" * 性别 学 号 班级 联系 "<<endl;for(i=0;i<n;i+)if(ba=ti.getban()cout<<ti;temp=i;if(tem
22、p=-1000)cout<<endl<<endl<<" 班级为 "<<ba<<" 的学生不存在 !"<<endl; getchar();void search_name(student t,int n)int i,temp=-1000;char na20;system("cls");cout<<" 请输入查找学生的*:"<<endl;cin>>na;for(i=0;i<n;i+)if(strcmp(na
23、,ti.getname()=0)cout<<" 该学生信息为:"<<endl<<" *性别学号班级联系"<<endl;cout<<ti;temp=i;if(temp=-1000)cout<<endl<<endl<<" *为 "<<na<<" 的学生不存在 !"<<endl; getchar();void sort(student t,int n)student p;int s;syst
24、em("cls");cout<<" 请选择升序或降序 (1 或 2):"<<endl;cin>>s;if(s=1)cout<<" 按学号排序升序完成如下:"<<endl;专业资料整理WORD格式22/ 26专业资料整理WORD格式for(int i=0;i<n-1;i+)for(int j=0;j<n-1-i;j+)if(tj.getnum()>tj+1.getnum()p=tj;tj=tj+1;tj+1=p;cout<<" * 性别
25、学号 班级 联系 "<<endl; for(int a=0;a<n;a+)cout<<ta;if(s=2)cout<<" 按学号排序降序完成如下: "<<endl; for(int i=0;i<n-1;i+)for(int j=0;j<n-1-i;j+)if(tj.getnum()<tj+1.getnum()p=tj;tj=tj+1;tj+1=p;cout<<" * 性别 学号 班级 联系 "<<endl;for(int a=0;a<n;a+)
26、cout<<ta;getchar();void count(student t,int n)int i,c,temp=-1000;system("cls");fstream fs;fs.open("c:item.txt",ios:in);专业资料整理WORD格式23/ 26专业资料整理WORD格式cout<<" 请输入想统计人数的班级:"<<endl;cin>>c;int s=0;for(i=0;i<n;i+)fs>>ti;if(c=ti.getban()s+;temp
27、=i;cout<<" 该班级人数为: "<<s<<endl;fs.close();if(temp=-1000)cout<<endl<<endl<<" 班级为 "<<c<<" 的学生不存在 !"<<endl; getchar();void change(student t,int n)int id,i,temp=-1000,run=0;system("cls");cout<<" 请输入要修
28、改的学生的学号:"<<endl;cin>>id;fstream fs;fs.open("c:item.txt",ios:in|ios:out);for(i=0;i<n;i+)if(id=ti.getnum()cout<<" 修改前该学生信息为:"<<endl<<" * 性别 学号班级 联系 "<<endl;cout<<ti;temp=i;run=2000;fs.close();if(run=2000)fs.open("c:it
29、em.txt",ios:in|ios:out);cout<<" 请输入你修改该学生的信息为:"<<endl<<" *性别学号班级联系 "<<endl;cin>>ti;fs<<ti;专业资料整理WORD格式24/ 26专业资料整理WORD格式fs.close();cout<<" 修改成功! "<<endl;if(temp=-1000)cout<<endl<<endl<<" *为 "<<id<<" 的学生不存在 !"<<endl; getchar();int del(student t,int n)int ber,temp=-1000,run=0;int i,j,nu;system("cls");cout<<" 请输入要删除的学生的学号:"<<endl;cin>>b
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 材料员专业试题及答案
- 妊娠合并PKU的代谢通路干预策略
- 女性全生命周期健康管理策略
- 头颈癌免疫联合靶向剂量递增研究
- 奔驰dt认证考试及答案
- 多语言环境下移民疫苗接种健康宣教策略优化
- 浙大考试公式及答案
- 多组学数据挖掘的动态监测体系
- 2025年中职第三学年(数据结构与游戏算法)算法基础单元测试试题及答案
- 2025年中职智能网联汽车技术(自动驾驶基础)试题及答案
- 2026年重庆市江津区社区专职人员招聘(642人)笔试备考试题及答案解析
- 小学音乐教师年度述职报告范本
- 国家开放大学电大本科《流通概论》复习题库
- 机关档案汇编制度
- 2025年下半年四川成都温江兴蓉西城市运营集团有限公司第二次招聘人力资源部副部长等岗位5人参考考试题库及答案解析
- 2026福建厦门市校园招聘中小学幼儿园中职学校教师346人笔试参考题库及答案解析
- 2025年高职物流管理(物流仓储管理实务)试题及答案
- 设备管理体系要求2023
- 2025年学法减分试题及答案
- 2025年特种作业人员考试题库及答案
- 2025年合肥经开投资促进有限公司公开招聘11人笔试参考题库及答案解析
评论
0/150
提交评论