logo资料库

教室信息管理系统.doc

第1页 / 共7页
第2页 / 共7页
第3页 / 共7页
第4页 / 共7页
第5页 / 共7页
第6页 / 共7页
第7页 / 共7页
资料共7页,全文预览结束
《面向对象程序设计(VC++)》 课程设计报告 设计题目: 教室信息管理系统 班 学 姓 级: 号: 名: 指导教师: 开始日期: 完成日期: XXXX 大学 软件学院
一、课程设计题目 教室信息管理系统 二、功能说明 教室信息管理系统对教室信息进行管理,教室信息包括教室号、地点、楼层、 容量、类别等。此信息管理系统的功能包括:浏览数据、增加数据、修改数据、 查询数据(按教室号、按容量)退出等。 三、数据描述 本系统设计了一个教室类,其中教室类中主要存储了公有数据成员:教室号、 地点、楼层、容量、类别等,还包括构造函数、析构函数等共有成员函数,head 指针是教室类的对象指针。各成员函数(浏览数据的函数、增加数据的函数、修 改数据的函数、查询数据的函数)可以通过教室类的对象在主程序中进行调用, 相关操作包括浏览数据、增加数据、修改数据、查询数据、退出等。 本程序还应用了多重选择结构(if…else if 语句 )、指针等。 在主程序中,用户可以通过输入不同的数。进行相应的操作。 四、概要设计 在该教室信息管理系统的设计中,首先建立类,将数据成员封装起来,接着 建立成员函数实现函数的功能,在主函数中定义教室类的对象指针,调用成员函 数,从而实现教室信息管理系统的功能。 主程序流程图。 欢 迎 界 面 一、 浏 览 数 据 二、 增 加 数 据 三、 修 改 数 据 四、 查 询 数 据 五、 退 出 五、源程序 #include #include
using namespace std; class classroom { public: int room_num; char room_adrees[30]; int louceng; int rongliang; char object[10]; classroom *next; classroom(); }; //声明classroom类 //定义classroom类的指针next //构造函数 //构造函数初始化数据成员 classroom::classroom() { room_num=0; strcpy(room_adrees,"NULL"); louceng=0; rongliang=0; strcpy(object,"NULL"); } //浏览数据的函数 int display_room(classroom *Head) { while(Head->next!=NULL) { cout<<"教室号:"; cout<next->room_num<next->room_adrees<next->louceng<next->rongliang<next->object<next; } return 0; } int add_room(classroom *Head) { classroom *s=new classroom; //增加数据的函数
s->next=Head->next; Head->next=s; cout<<"教室号:"; cin>>s->room_num; cout<<"地点:"; cin>>s->room_adrees; cout<<"楼层:"; cin>>s->louceng; cout<<"容量:"; cin>>s->rongliang; cout<<"类别:"; cin>>s->object; return 0; } int modify_room(classroom *Head,int num) { while(Head->next!=NULL) { if(Head->next->room_num==num) { cout<<"教室号:"; cin>>Head->next->room_num; cout<<"地点:"; cin>>Head->next->room_adrees; cout<<"楼层:"; cin>>Head->next->louceng; cout<<"容量:"; cin>>Head->next->rongliang; cout<<"类别:"; cin>>Head->next->object; } else Head=Head->next; } return 0; } //修改数据的函数 int base_on_room_num(classroom *Head,int num) { 数据的函数 while(Head->next!=NULL) { if(Head->next->room_num==num) { cout<<"教室号:"; cout<next->room_num<
/*按容量查 cout<next->room_adrees<next->louceng<next->rongliang<next->object<next; } return 0; } int base_on_rongliang(classroom *Head,int rongliang) { 询数据的函 数*/ while(Head->next!=NULL) { if(Head->next->rongliang==rongliang) { cout<<"教室号:"; cout<next->room_num<next->room_adrees<next->louceng<next->rongliang<next->object<next; } return 0; } void main() { classroom *head=new classroom; head->next=NULL; int n=1;
//调用浏览数据的函数 //调用增加数据的函数 //调用修改数据的函数 while(n) { cout<<"1.浏览数据\n"; cout<<"2.增加数据\n"; cout<<"3.修改数据\n"; cout<<"4.按教室号查询数据\n"; cout<<"5.按教室容量查询数据\n"; cout<<"6.退出\n\n"; cout<<"请选择菜单项:"; int a; cin>>a; if(a==1) { display_room(head); } else if(a==2) { add_room(head); cout<<"\n增加成功!\n\n"; } else if(a==3) { cout<<"请输入要修改的教室号:"; int num; cin>>num; modify_room(head,num); cout<<"\n修改成功!\n\n"; } else if(a==4) { cout<<"请输入教室号:"; int room_num; cin>>room_num; if(base_on_room_num(head,room_num)) cout<<"\n\n查询完毕!\n\n"; else cout<<"\n\n没有查询到相关信息\n\n"; } else if(a==5) { cout<<"请输入容量:"; int rongliang; cin>>rongliang; if(base_on_rongliang(head,rongliang)) cout<<"\n\n查询完毕!\n\n"; else cout<<"\n\n没有查询到相关信息\n\n"; } //按教室号查询数据 /*按教室容量查询数据*/
else if(a==6) { cout<<"谢谢使用!再见!\n"; n=0; } else cout<<"菜单错误\n"; } } 六、测试分析 1、运行程序进入教室信息管理系统,界面显示 1.浏览数据 2.增加数据 3.修改数据 4.按教室号查询数据 5.按教室容量查询数据 6.退出 请选择菜单项: 用户可以根据需要选择所需服务类别,并根据提示进行操作。 2、存在的问题及解决的方法 基本实现了课程设计目标。但指针运用不太熟悉。 七、总结 通过这次的课程设计,使我更加深刻的了解了面向对象程序设计的主要思想 和特点。在面向对象的程序设计中,用类封装数据,程序模块化设计。 思路清晰明了,易于理解。通过面向对象的学习,在今后的程序设计中可以 拓宽思路,更加熟练掌握面向对象程序设计的方法,以及其他编程语言的使用。
分享到:
收藏