C++程序设计学校教师管理系统_第1页
C++程序设计学校教师管理系统_第2页
C++程序设计学校教师管理系统_第3页
C++程序设计学校教师管理系统_第4页
C++程序设计学校教师管理系统_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流C+程序设计学校教师管理系统.精品文档. 报告编号:第 5 组综合课程设计报告学校教师管理系统 2013年 12 月 24 日目 录1、课程设计目的和要求31.1 设计目的31.2 设计要求31.3 课程设计任务内容42、详细设计说明52.1初始界面如下53、程序设计流程图54、程序源代码74.1测试数据74.2各模块运行界面85、课程设计中遇到的问题和体会175.1 课程设计中遇到的问题175.2课程设计中的体会176、致谢187、参考文献18摘要通过主菜单main函数将增加教师信息,删除教师信息、显示教师信息、查找教师信息、统计教师人数、

2、退出系统等函数结合在一起,在通过相关操作选择其中一个功能时,调用该功能函数,来完成所需的数据处理。采用类,对象数组,等相关类的应用来完成设计。在程序中主要定义了teacher类,使用了teacher1文件,等等,另外还有相关调用子函数。关键词:学校教师管理系统;类;文件;对象数组;1、课程设计目的和要求1.1 设计目的通过这次专题实习,巩固和加深对所学相关知识点的理解,进一步熟悉基本类的使用方法。基本数据类型、对象数组、自定义类、函数的应用加强对模块化程序设计和面向对象程序设计的理解。掌握CC+语言程序设计的基本思想,了解简单的系统分析和设计方法。1.2 设计要求实现简易的提示菜单界面,刚运行

3、时应显示菜单信息。用所学的知识尽量实现良好的、美观的“人机界面”,便于软件的操作使用。要求把所有录入的数据以文件的形式,保存在硬盘上,系统包含以下基本功能:开始、显示主菜单功能、增加教师信息,删除教师信息、显示教师信息、查找教师信息、统计教师人数、退出系统等。1.3 课程设计任务内容1.3.1 增加教师信息 用户输入要添加的教师信息。教师信息包括编号、姓名、在校职位、年龄、出生日期、住址、电话号码、电子邮件地址等。输入数据时,须验证数据的输入格式正确,保证教师编号的唯一性。1.3.2 删除教师信息输入教师编号,查找到对应的教师信息并删除,若教师编号不存在,则输出“输入有误!”。1.3.2显示教

4、师信息显示文件中所有教师信息。1.3.3查找教师信息可分为按(1.教师编号;2.教师姓名)查找,选择1则需要输入教师编号,选择2则需要输入教师姓名。1.3.4统计教师人数可统计文件中保存的教师的总人数。1.3.5 退出结束程序运行。2、详细设计说明2.1初始界面如下:之后按界面提示操作按1,2,3,4,5,6可进入相应界面进行增加教师信息,删除教师信息、显示教师信息、查找教师信息、统计教师人数、退出系统等项目对教师信息进行一系列的操作,并借用一系列的文件的读写和程序语句构建出最后的大程序来实现对教师信息的管理。3、程序设计流程图开始1.增加教师信息2.删除教师信息3.显示教师信息4.查找教师信

5、息5.统计教师人数 选择 1输入要录入的教师人数输入教师信息 保存教师信息选择2 选择 3输入查找编号1. 按编号查找2. 按姓名查找显示余下教师信息显示教师信息显示教师人数 选择 4选择 5选择 2输入查找姓名 显示教师信息删除并保存信息 选择 1 输出信息 结束输入删除编号4程序源代码#include <iostream>#include<fstream>using namespace std;#include <string.h> class teacherpublic:int num;/编号char name20;/姓名int age;/年龄char

6、 birthday20;/出生日期char addr20;/住址int phone;/电话号码char eaddr20;/电子邮件地址char call20;/在校职位void set();void display();void del();void zhao();void renshu();tea100;int length() ifstream infile("teacher1.dat",ios:binary); if(! infile) cerr<<"open error!"<<endl; abort(); int len;

7、 infile.seekg(0,ios:end); len=infile.tellg()/sizeof(teacher); return len;void teacher:set() int n,i,j; int l=0;ofstream outfile("teacher1.dat",ios:app|ios:binary);if(! outfile)cerr<<"open error!"<<endl;abort();l=length();cout<<l<<endl;if(l>0)ifstream in

8、file("teacher1.dat",ios:in|ios:binary); if(! infile) cerr<<"open error!"<<endl; abort();for( i=0;i<l;i+) infile.read(char *)&teai,sizeof(teai);n=0;cout<<"请输入要录入的教师人数(<=100):"<<endl; cin>>n; cout<<"请输入1个教师的信息:"<&

9、lt;endl;/编号、姓名、年龄、出生日期、住址、电话号码、电子邮件地址、在校职位 cout<<endl; for(i=l;i<n+l;) cout<<"输入教师编号:" cin>>teai.num; if(i>0) int h=i;for(j=0;j<h;)if(teah.num=teaj.num) cout<<"教师号重复,请重新输入!"<<endl;else j+;continue;cout<<"输入教师编号:" cin>>t

10、eah.num;j=0; cout<<"输入教师姓名:" cin>>; cout<<"输入教师职位:" cin>>teai.call; cout<<"输入教师年龄:" cin>>teai.age; cout<<"输入教师出生日期:" cin>>teai.birthday; cout<<"输入教师电话号码:" cin>>teai.phone; cout<&

11、lt;"输入教师住址:" cin>>teai.addr; cout<<"输入教师电子邮件地址:" cin>>teai.eaddr; /cout<<endl;i+;if(i<n+l)cout<<"请输入"<<i+l+1<<"个教师的信息:"<<endl; for(j=l;j<n+l;j+)outfile.write(char *)&teaj,sizeof(teaj);outfile.close(); c

12、out<<"数据已保存!n"void teacher:display()int i,l;l=length();cout<<" 编号 姓名 职位 年龄 出生日期 电话号码 住址 电子邮件地址"<<endl;ifstream infile("teacher1.dat",ios:in|ios:binary);if(! infile)cerr<<"open error!"<<endl;abort();for( i=0;i<l;i+)infile.read(c

13、har *)&teai,sizeof(teai); cout<<" "<<teai.num<<" "<<<<" "<<teai.call<<" "<<teai.age<<" "<<teai.birthday <<" "<<teai.phone<<" "<<teai.

14、addr<<" "<<teai.eaddr<<endl;infile.close();void teacher:del()int i,a=0,j,l; l=length(); ifstream infile("teacher1.dat",ios:in|ios:binary);if(! infile)cerr<<"open error!"<<endl;abort();for( i=0;i<l;i+)infile.read(char *)&teai,sizeof(t

15、eai);int num;cout<<"请输入要删除的编号:"cin>>num;cout<<endl;for(i=0;i<l;i+)if(teai.num=num) a=1; for(j=i;j<l-1;j+) teaj=teaj+1; break;if(a=0)cout<<"输入有误!"<<endl;cout<<" 编号 姓名 职位 年龄 出生日期 电话号码 住址 电子邮件地址"<<endl;for( i=0;i<l;i+)infi

16、le.read(char *)&teai,sizeof(teai); cout<<" "<<teai.num<<" "<<<<" "<<teai.call<<" "<<teai.age<<" "<<teai.birthday <<" "<<teai.phone<<" "<

17、<teai.addr<<" "<<teai.eaddr<<endl;elseif(a=1)cout<<"删除成功! "<<endl; cout<<" 编号 姓名 职位 年龄 出生日期 电话号码 住址 电子邮件地址"<<endl;for( i=0;i<l-1;i+)infile.read(char *)&teai,sizeof(teai); cout<<" "<<teai.num<&l

18、t;" "<<<<" "<<teai.call<<" "<<teai.age<<" "<<teai.birthday <<" "<<teai.phone<<" "<<teai.addr<<" "<<teai.eaddr<<endl;ofstream outfile(&quo

19、t;teacher1.dat",ios:out|ios:binary);if(! outfile)cerr<<"open error!"<<endl;abort();for(j=0;j<l-1;j+)outfile.write(char *)&teaj,sizeof(teaj);outfile.close(); void teacher:zhao()int i,l,m=0; int n;l=length();cout<<l<<endl; ifstream infile("teacher1.da

20、t",ios:in|ios:binary); if(! infile) cerr<<"open error!"<<endl; abort(); for( i=0;i<l;i+) infile.read(char *)&teai,sizeof(teai); cout<<"请选择按(1.教师编号;2.教师姓名)查找n"for(;) int x; cin>>x; if(x=1) cout<<"请输入要查找的编号:" cin>>n; cout<

21、;<endl; for(i=0;i<l;i+) if(n=teai.num) cout<<" 编号 姓名 职位 年龄 出生日期 电话号码 住址 电子邮件地址"<<endl; cout<<" "<<teai.num<<" "<<<<" "<<teai.call<<" "<<teai.age<<" "<<te

22、ai.birthday <<" "<<teai.phone<<" "<<teai.addr<<" "<<teai.eaddr<<endl; m=1; break;break; if(m=0) cout<<"未找到!"<<endl;if(x=2) cout<<"请输入要查找的姓名:"char y10; cin>>y; cout<<endl; for(i=0

23、;i<l;i+) if(strcmp(y,)=0) cout<<" 编号 姓名 职位 年龄 出生日期 电话号码 住址 电子邮件地址"<<endl; cout<<" "<<teai.num<<" "<<<<" "<<teai.call<<" "<<teai.age<<" "<<teai.birt

24、hday<<" "<<teai.phone<<" "<<teai.addr<<" "<<teai.eaddr<<endl; m=1; break; break; if(m=0) cout<<"未找到!"<<endl;if(x!=1|x!=2)cout<<"输入错误!请重新输入!n" continue;void teacher:renshu()int l=length();cou

25、t<<"统计教师人数:"<<l<<endl;int main()teacher a;int select=0;while(1) cout<<"*"<<endl; cout<<"* 欢迎使用教师信息管理系统 *"<<endl; cout<<"* 1.增加教师信息 *"<<endl; cout<<"* 2.删除教师信息 *"<<endl; cout<<&qu

26、ot;* 3.显示教师信息 *"<<endl; cout<<"* 4.查找教师信息 *"<<endl;cout<<"* 5.统计教师人数 *"<<endl; cout<<"* 6.退 出 系 统 *"<<endl; cout<<"*"<<endl; cout<<("请输入您的选择 (1-6) : bb"); cin>>select; switch(sele

27、ct)case 1:a.set();break; case 2: a.del(); break; case 3: a.display(); break; case 4: a.zhao(); break;case 5:a.renshu();break; case 6: exit(0); break; default: cout<<"输入错误!"<<endl; return 0;4.1测试数据输入 111 zx zxcv 22 93.03.06 15755356 mnbv zxqwertyuio输入 222 qw zxcv 23 92.03.16 18356987 mnvb zxcvbnmlkjh输入 333 ee zxcv 24 91.02.14 15755284 nmjk qwertyuiopa输入 444 rr zxcv 25 90.06.15 15755388 bjhg asdfghjklmn4.2 各模块运行界面如下1.增加功能的调试 2.删除功能的调

温馨提示

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

评论

0/150

提交评论