




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
面向对象课程设计报告课程设计题目: 宿舍管理系统 学 生 姓 名: 肖 莹 专 业: 计算机应用技术班 级: 1240301学 号: 201240030145指 导 教 师: 阳红星 2014年 1月1日 面向对象课程设计报告1.程序设计内容及要求1) 任务:为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求:A.采用交互工作方式B.建立数据文件 ,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)2)查询菜单: (用二分查找实现以下操作)A.按姓名查询 B.按学号查询 C.按房号查询3)打印任一查询结果(可以连续操作)2、课程设计的目的了解面向对象的核心概念以及对象的具体含义,熟悉用面向对象去编程,掌握面向对象的编程环境并充分利用。3、方法设计与论证构思流程图:4、算法说明主要有主菜单函数,插入功能子菜单函数,查找功能子菜单函数,学生信息录入函数,显示函数,排序函数,插入函数以及查找函数。在每个区域中会调用不同的函数来实现主要的功能。比如,在学生显示这个功能里调用显示函数;在插入功能里调用子菜单函数;在显示信息时调用排序函数先对需要输出的信心进行排序,然后再输出;在查找功能里会调用查找函数来进行查找,包括按照班级,学号,姓名,宿舍号等查询。5、设计代码#include #include #include #include using namespace std;class studentprivate: long int stu_num; /学号,宿舍号 char stu_name10; /姓名 char class_name10; /班别char house_name10; /宿舍public: student() stu_num=0; stu_name0 =0; class_name0 =0; house_name0 =0;student:student(long a, char * b,char *c,char *d) Setdata(a , b, c, d); char * Getstuname(void) /姓名查找 return stu_name ;long Getstunum(void) /学号查找 return stu_num;char * Gethousename(void) /宿舍号查找 return house_name;char * Getclassname(void) /按班级查找 return class_name;void Setdata(long a, char *b,char *c,char *d) stu_num = a; strcpy(stu_name, b); strcpy(class_name, c); strcpy(house_name, d);void Show(void) cout学号:stu_numt姓名:stu_namet; cout班级号:class_namett宿舍号:house_namen;void main(void)student s1;int flags=0; long stu_num; /学号 char stu_name40; /姓名 char class_name40; /班级 char house_name20; /宿舍time_t t; time(&t); ifstream file1; ofstream file3; char flag = y; cout -学生成绩管理系统-endl; while( flag=y | flag=Y) cout-n; couttt 1: 已 经 注 册 学 生! nn; couttt 2: 通 过 学 号 查 看 学 生 信 息! nn; couttt 3: 通 过 宿 舍 号 查 看 学 生 信 息! nn; couttt 4: 通 过 姓 名 查 看 学 生 信 息! nn; couttt 5: 通 过 班 级 查 看 学 生 信 息! nn; couttt 6: 显 示 全 部 学 生 信 息! nn; couttt 7: 通 过 学 号 修 改 学 生 信 息! nn; couttt 8: 通 过 学 号 删 除 学 生 信 息! n; cout-n; coutchoice; switch(choice) case 1: file3.open(c:stu.dat,ios:app|ios:binary);input: flags=0; coutstu_num; while(!file1.eof() int n; file1.read(char *)&s1,sizeof(student); n=file1.gcount(); if(n=sizeof(student) if(s1.Getstunum()=stu_num) flags=1; file1.clear(); file1.close(); if (flags=1) cin.clear(); cout 学号重复,请重输入! endl; goto input; coutstu_name; coutclass_name; couthouse_name; s1.Setdata(stu_num,stu_name,class_name,house_name); file3.write(char*)&s1,sizeof(s1); file3.clear(); file3.close(); break; case 2: /按学号查找 coutstu_num; while(!file1.eof() int n; file1.read(char *)&s1,sizeof(student); n=file1.gcount(); if(n=sizeof(student) if(s1.Getstunum()=stu_num) /显示学生信息 s1.Show(); flags=1; file1.clear(); file1.close(); if (flags=0) cout 对不起,没有找学号为: stu_num 的学生记录! endl; flags=0; break; case 3: /按宿舍号查找 couthouse_name; file1.open(c:stu.dat,ios:in | ios:binary | ios:beg);/按读方式打开文件 while(!file1.eof() int n; file1.read(char *)&s1,sizeof(student); n=file1.gcount(); if(n=sizeof(student) if(strcmp(s1.Gethousename(),house_name)=0) s1.Show(); flags=1; file1.clear(); file1.close(); if (flags=0) cout 对不起,没有找到宿舍为: house_name 的学生记录! endl; flags=0; break; case 4: /按姓名查找 coutstu_name; file1.open(c:stu.dat,ios:in | ios:binary | ios:beg);/按读方式打开文件 while(!file1.eof() int n; file1.read(char *)&s1,sizeof(student); n=file1.gcount(); if(n=sizeof(student) if(strcmp(s1. Getstuname(),stu_name)=0) s1.Show(); flags=1; file1.clear(); file1.close(); if (flags=0) cout 对不起,没有找到姓名为: stu_name 的学生记录! endl; flags=0; break; case 5: /按班级查找 coutclass_name; file1.open(c:stu.dat,ios:in | ios:binary | ios:beg);/按读方式打开文件 while(!file1.eof() int n; file1.read(char *)&s1,sizeof(student); n=file1.gcount(); if(n=sizeof(student) if(strcmp(s1. Getclassname(),class_name)=0) s1.Show(); flags=1; file1.clear(); file1.close(); if (flags=0) cout 对不起,没有找到班级为: class_name 的学生记录! endl; flags=0; break; case 6: /显示全部学生信息 file1.open(c:stu.dat,ios:in | ios:binary);/按读方式打开文件 while(!file1.eof() int n; file1.read(char *)&s1,sizeof(student); n=file1.gcount(); if(n=sizeof(student) s1.Show(); flags=1; file1.clear(); fil
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上半年安全生产工作总结合集15篇
- 吉林投资管理办法
- 名誉股东管理办法
- 员工宣传管理办法
- 商业分组管理办法
- 商会融资管理办法
- 商品防损管理办法
- 商户租赁管理办法
- 喀什户口管理办法
- 因公赴台管理办法
- 2025年法理学试题及答案
- GB/T 9754-2025色漆和清漆20°、60°和85°光泽的测定
- 快件处理员职业技能模拟试卷含答案
- 2025年7月浙江高中学业水平考试数学试卷真题(含答案详解)
- 山东省济南市历城区2024年八上物理期末统考试题含解析
- 高中校长考试试题及答案
- 【化学 东北卷】2025年东北地区高考招生考试真题化学试卷(适用 黑龙江、吉林、辽宁、内蒙古地区)
- 医院drg付费培训课件
- 食盐安全培训课件
- 陕西省专业技术人员继续教育2025公需课《党的二十届三中全会精神解读与高质量发展》20学时题库及答案
- 第三章片剂-5包衣
评论
0/150
提交评论