《基于C++的面向对象程序设计实例》课程设计报告_第1页
《基于C++的面向对象程序设计实例》课程设计报告_第2页
《基于C++的面向对象程序设计实例》课程设计报告_第3页
《基于C++的面向对象程序设计实例》课程设计报告_第4页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

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

文档简介

せヰ就人エ业当it军业卷攵北华航天工业学院《基于C++的面向对象程序设计实例》课程设计报告报告题目: 高校水电费管理系统设计作者所在系部:计算机科学与工程系作者所在专业:计算机应用技术作者所在班级: 作者姓名: 指导教师姓名: 完成时间:2012年6月21日星期四北华航天工业学院教务处制当今教育事业备受关注,为了高效方便的对学校学生和教师的水电费进行管理,本文利用VisualC++6.0开发了高校水电费管理系统实现了这ー功能。现设计ー个高校水电费管理系统,主要有七个功能模块,实现添加、查询、显示、修改、删除、统计、退出系统。本系统已全面通过系统测试,能够很好的运行,达到预期效果。关键词:信息管理 系统设计 面向对象目录TOC\o"1-5"\h\z摘要 1第一章绪论 3\o"CurrentDocument"1. 1课程设计的目的 31. 2课程设计的背景和意义 31.2.1课程设计的背景 3\o"CurrentDocument"1.2.2课程设计的意义 3\o"CurrentDocument"3课程设计环境 3第二章 需求分析 4\o"CurrentDocument"1问题描述 4\o"CurrentDocument"2功能要求 4\o"CurrentDocument"3问题的解决方案 4第三章系统设计 61数据设计 63. 1. I类设计 63. 1. 2类之间的关系 73. 1. 3函数设计 7\o"CurrentDocument"2结构设计 112. 1系统流程图 112. 2界面设计 11第四章系统实现 13\o"CurrentDocument"1类实现 13\o"CurrentDocument"2函数实现 40\o"CurrentDocument"3主函数实现 43第五章系统测试 43\o"CurrentDocument"1模块测试 43\o"CurrentDocument"2课程设计过程中遇到的问题 47总结 47致谢 48参考文献 49第一章绪论1.1课程设计的目的(1)要求学生能够熟练掌握C++语言的基本知识和技能。(2)基本掌握面向对象程序设计的基本思路和方法。(3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。1.2课程设计的背景和意义2.1课程设计的背景.理论研究基础(1)C++在C的基础上增加了面向对象的机制。(2)充分运用面向对象机制中的继承性与多态性实现函数的设计。.技术层面的支持运用系统为C++面向对象程序设计提供的各种设计方法和VC++系统提供的库函数实现项目的开发。1.2.2课程设计的意义通过设计此系统,熟练掌握C++语言的基本知识和技能,基本掌握面向对象程序开发的基本思路和方法,培养学生的动手操作能力,提高自主学艺能力,能够利用所学的基本知识和技能,进行简单应用程序设计。1.3课程设计环境软件环境:VisualC++6.0是微软公司开发的可视化C++集成开发环境,它将程序代码的编辑、编译、连接、调试等功能集为一体,向用户提供方便友好的界面,以便对其进行操作。硬件环境:图书馆五楼实验室,笔记本电脑。第二章需求分析2.1问题描述住宿学生信息包括:学号、姓名、性别、年龄、班级、用电量、用水量等信息。教エ信息包括职エ号、姓名、性别、年龄、工作部门、用电量、用水量等信息。能计算出学生和教工每月所要交的电费和水费。定义一个人员类,实现学生和教エ共同的信息和行为。2.2功能要求(1)添加功能:程序能够添加不同学生和教エ的记录,提供选择界面供用户选择所要添加的类别,要求编号号要唯一,如果添加了重复编号的记录时,则提示数据添加重复并取消添加。(2)查询功能:可根据姓名、用水量、用电量信息对已添加的学生或教エ记录进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。(3)显示功能:可显示当前系统中所有学生和教エ的记录,每条记录占据一行。(4)编辑功能:可根据査询结果对相应的记录进行修改,修改时注意编号的唯一性。(5)删除功能:主要实现对已添加的学生或教エ记录进行删除。如果当前系统中没有相应的记录,则提示“记录为空!”并返回操作。(6)统计功能:能根据多种参数进行统计。能统计学生和教エ的用水用电量、所要交纳的电费和水费、未交纳水电费的人员信息等。(7)保存功能:可将当前系统中各类记录存入文件中,存入方式任意。(8)读取功能:可将保存在文件中的信息读入到当前系统中,供用户进行使用。(9)计算电费和水费。学生每月都有一定额度的水电是免费使用的,超过的部分需要交费。2.3问题的解决方案根据系统功能要求,可以将问题解决分为以下步骤:(1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;(2)分析系统中的各个实体及它们之间的关系;(3)根据问题描述,设计系统的类层次;(4)完成类层次中各个类的描述;(5)完成类中各个成员函数的定义;(6)完成系统的应用模块;(7)功能调试;(8)完成系统总结报告。

第三章3.1数据设计3.1.I类设计人员类:Person数据成员:intage;stringnum;stringname;stringstatus;stringsex;doubleyongdianliang;doubleyongshuiliang;成员函数:stringGetnumO{returnnum;}stringGetname(){returnname;}virtualvoidInput();virtualvoidOutput();学生类:Student公有继承Person类自己生成的数据成员:stringbanji;成员函数:voidInput();voidOutput();教エ类:Teacher公有继承Person类自己生成的数据成员:stringbranch;成员函数:voidInput();voidOutput();管理类:ManageManage(){}系统设计人员年龄人员编号人员姓名人员身份人员性别人员用电量人员用水量返回人员编号返回人员姓名虚函数输入人员基本信息虚函数输出人员基本信息学生班级输入学生基本信息输出学生基本信息工作部门输入教师基本信息输出教师基本信息无参构造函数

voidaddl();添加学生信息函数voidadd2();添加教师信息函数voidadd();添加函数,调用添加教师或学生函数voidsearch();查询并显示记录内容函数voidsearchew();查询并显示水电费函数voiddelet();调用deletl()和delet2()函数voiddeletl();删除学生信息函数voiddelet2();删除教师信息函数voidfanhui();返回菜单函数voideditl();编辑学生信息函数voidedit2();编辑教师信息函数voidedit();编辑函数,调用编辑教师或学生信息函数voiddisplay();显示函数,调用显示教师或学生信息函数voiddisplayl();显示学生信息函数voiddisplay2();显示教师信息函数3.1.2类之间的关系Student类和Teacher类公有继承Person类,因为Student类和Teacher类中有共有的数据成员:编号、姓名、性别、年龄、用电量、用水量,共有的成员函数:输入函数和输出函数。使用继承关系,实现学生和教エ共同的信息和行为。Manage类,是ー个独立的管理类。实现对用户信息的添加、查询、显示、删除、修改等功能。3.1.3函数设计定义了哪些函数;各个函数完成的功能及主要算法描述。系统定义了九个函数,其中包括四个菜单函数,四个统计教师和学生水电费函数,一个主函数。主菜单函数:显示主菜单界面。算法:voidmenu()cout«"************** 高校水电费管理系统cout«n**************2信息查询***********\n”・***********\n”■cout«n**************2信息查询***********\n”・***********\n”■***********\n”・coutw”**************3统计并查询用户应缴费用***********、ゴ・cout«M**************4修改用户信息********木・・、n”・COU^イア”**************5删除用户的信息*********糸*、n””coukl”**************6显示记录信息***********\n"•cout«"ホ*************7退出程序木**********、n”・添加菜单函数及其算法:voidmenu1()coutピ/”*求******1增加学生的信息**********、n”・coutぐメ*********2:增加老师的信息**********、ゴ・coutv<"********3;返回菜单**********、j^”•)编辑菜单函数及其算法voidmenu2()(cout<<"*******1修改学生的信息**********cout<v"*******2修改老师的信息米*********、pj”•cout-”*******3返回菜单********求*w”・)显示菜单函数及其算法:voidmenu3()(cout<V”*******1显示学生的信息**********w”・couyグ’*******2显示老师的信息**********、ゼ・ctvぐ*******3返回菜单**********\n"")删除菜单函数及其算法:voidmenu4()(coutメア”**歩****1删除学生的信息**********、ガ・Coutビグ’*******2删除老师的信息********次・\n",cout<v"*******3返回菜单**********\n”.统计老师电费函数及其算法:doublete(inti)(doublee;doubleep=1.0;e=tea[i].yongdianliang*ep;returne;}统计老师水费函数及其算法:doubletw(inti)(doublew;doubleep=1.0;w=tea[i].yongshuiliang*ep;returnw;}统计学生电费函数及其算法:doublese(inti)(doublex;doublemd=50;〃固定额度doubleep=1.0;if(stu[i].yongdianliang>md)(x=(stu[i].yongdianliang-md)*ep;returnx;}elsereturnx=0;}统计学生水费及其算法:doublesw(inti)统计学生水费doubley;doublemd=100;doubleep=1.0;if(stu[i].yongshuiliang>md)(y=(stu[i].yongshuiliang-md)*ep;returny;)elsereturny=0;)主函数:调用功能函数。算法:voidmain()(ManageM;intm;do{menu();coutvv”请选择:";cin»m;switch(m){casel:M.add();break;case2:M.search();break;case3:M.searchew();break;case4:M.edit();break;case5:M.delet();break;case6:M.display();break;case7:exit(0);break;}while(m<1||m>7);}3.2结构设计3.2.1系统流程图类的关系图:3.2.2界面设计主菜单界面:M-W-M-M-M-M-M-M-M-M-M7M-W-M-M-M-M-M-M-M-M-M7添加菜单界面修改菜单界面修改时:123息息信一信的的生螢i改改回量返:1.按编修改时:123息息信一信的的生螢i改改回量返:1.按编号査询 2.按姓名査询输入査找方声:.显示菜单界面123S生電

i

示示回

显普息息ーー删除菜单界面每个菜单的子菜单项上如图所示,实现这些界面主要用到了循环等方法。第四章系统实现4.1类实现定义人员类作为基类,包含各个人员类共有的数据成员,同时定义输入输出函数为虚函数。classPerson(public:intage;stringnum;stringname;stringstatus;stringsex;doubleyongdianliang;doubleyongshuiliang;stringGetnumO{returnnum;}stringGetname(){returnname;}virtualvoidInput();virtualvoidOutput();};voidPerson::Input(){coutくく“学号:";cin>>num;coutくく〃姓名:“;cin»name;coutくく〃性别:〃;cin»sex;coutくく〃年龄:〃;cin»age;coutくく〃用电量:〃;cin>>yongdianliang;coutくく〃用水量:〃;cin>>yongshuiliang;voidPerson::Output()(coutくく〃编号:"くくnumくく"、t"くく"\t"くく"姓名:"くくnameくく"、t"くく"性别:"<<sex;coutくく"、t"くく"年龄:"くくageくく"、t"くく"用电量:"くくyongdianliangくく"、t"くく"用水量:"<<yongshui1iang<<endl;}定义学生类,继承基类人员类的数据成员和成员函数,同时生成自己的数据成员和成员函数,主要有输入输出函数。classStudent:publicPerson(public:voidInput();voidOutput();stringbanji;};voidStudent::Input()(coutくく"学号:";cin>>num;coutくく"班级:";cin»banji;coutくく"姓名:";cin»name;coutくく"性别:";cin»sex;coutくく"年龄:";cin»age;coutくく"用电量:";cin>>yongdianliang;coutくく"用水量:";cin>>yongshuiliang;voidStudent::Output()coutくく"学号:"くくnumくく"、t"くく"班级:"くくbanjiくく"'t"くく"姓名:"<<name«"\t"<<"性别:"くくsex;coutくく“、t"くく"年龄:"<<age<<"\t"<<"用电量:"くくyongdianliangくく"、t"くく"用水量:"<<yongshuiliang<<endl;}定义教师类,继承基类人员类的数据成员和成员函数,同时生成自己的数据成员和成员函数,主要有输入输出函数。classTeacher:publicPerson(public:stringbranch;voidInput();voidOutput();};voidTeacher::Input()(COUtくく"职エ号:";cin»num;coutくく"工作部门:";cin>>branch;coutくく"姓名:";cin»name;coutくく"性别:";cin»sex;coutくく"年龄:";cin>>age;coutくく"用电量:";cin»yongdianliang;coutくく"用水量:";cin»yongshuiliang;voidTeacher::Output()cout«/Z职エ号:“くくnumくく“、t"くく”工作部门:"くくbranchくく"、t"くく”姓名:"くくnameくく"、t"くく"性别:"くくsex;coutくく〃、t〃くく"年龄:"くくageくく"、t〃くく"用电量:"くくyongdianliangくく〃、t〃くく"用水量:"<<yongshuiliang<<endl;}定义管理类,包含添加、查询、修改、删除、统计、显示、退出等函数,以实现对人员的管理。classManage(public:ManageO{}voidaddl();voidadd2();voidsearch();voidsearchew();voiddelet1();voiddelet2();voiddelet();voidfanhui();voidadd();voideditl();voidedit2();voidedit();voiddisplay();voiddisplayl();voiddisplay2(););voidManage::search(){inti,flag=0;ifstreamf("D:\\sl.txt",ios::in);if(!f){cerrくく”打开文件错误”くくendl;}elsefor(i=0;i<M;i++)f>>stu[i].num>>stu[i].name>>stu[i].age>>stu[i].sex>>stu[i].banji>>stu[i].yongshuiliang»stu[i].yongdianliang;f.close();ifstreamF(〃D:\\tl.txt",ios::in);for(i=0;i<M;i++)F>>tea[i].num>>tea[i].name>>teaLi].age>>tea[i].sex>>tea[i].branch»tea[i].yongshuiliang>>tea[i].yongdianliang;F.close();coutくく”输入所查用户的编号”くくendl;stringnum;cin»num;ford二〇;iくM;i++){if(num==stu[i].num){flag=l;break;}if(num==tea[i].num){flag=2;break;}}if(flag==0)coutくく"查无此人〃くくendl;if(flag==l)coutくく"学号:"くくstu[i].numくく"〃くく"姓名:"くくstu[i].nameくく""くく"年龄:"くくstu[i].ageくく""くく"班级:"くくstu[i].banjiくく""くく"性别:"くくstu[i].sexくく""くく"用水量:"くくstu[i].yongshuiliangくく""くく"用电量:"くくstu[i].yongdianliang<<endl;if(flag==2)coutくく"エ号:"くくtea[i].numくく""くく"姓名:"くくtea[i].nameくく""くく"年龄:"くくtea[i].ageくく""くく"性别:"«tea[i].sex«""くく"工作部门:"くくtea[i].branchくく""«"用水量:"«tea[i].yongshuiliang«""«"用电量:"«tea[i].yongdianliang<<endl;intm;do{menu();coutくく"请选择";cin>>m;switch(m){case1:add();break;case2:search();break;case3:searchew();break;case4:edit();break;case5:delet();break;case6:display();break;case7:exit(0);break;)while(m<l|jm>7);}voidManage::searchew(){inti,flag=0;ifstreamf("D:\\sLtxt",ios::in);for(i=0;i<M;i++)f>>stu[i].num>>stu[i].name>>stu[i].age>>stu[i].sex>>stu[i].banji>>stu[i].yongshuiliang»stu[i].yongdianliang;f.closeO;ifstreamF("D:\\tl.txt",ios::in);for(i=0;i<M;i++)F>>tea[i].num>>tea[i].name>>tea[i].age>>tea[i].sex>>tea[i].branch»tea[i].yongshui1iang>>tea[i].yongdianliang;F.close();stringnumber;coutくく〃输入所查人的编号〃くくendl;cin»number;for(i=0;i<M;i++){if(numberニニstu|_i」.num){flag=l;break;}if(numberニニtea[i].num){flag=2;break;}}if(flag==O)coutくく"查无此人"くくendl;if(flag==l){coutくく〃该学生本月的用水量为:“くくstu[i].yongshuiliangくく”该学生本月用电量为:"<<stu[i].yongdianliang<<endl;coutくく"该学生本月的水费为:"«sw(i)くく"该学生本月电费为:"«se(i)«endl;if(flag==2){coutくく"该教师本月的用水量为:"くくtea[i].yongshuiliangくく"该教师本月用电量为:"«tea[i].yongdianliang<<endl;coutくく"该教师本月的水费为:"«tw(i)くく"该教师本月的电费为:"くくte⑴«endl;intm;do{menu();coutくく"请选择:";cin>>m;switch(m){case1:add();break;case2:search();break;case3:searchew();break;case4:edit();break;case5:delet();break;case6:display();break;case7:exit(0);break;}Iwhile(m<l|jm>8);voidManage::display1()ifstreamf(〃D:\\sLtxt",ios::in);if(!f)(cerrくく〃打开文件错误!”くくendl;return;}else{stringarr[100][100];〃定义一个string类型的二维数组,用来保存从文本内读取的信息intline=0;memset(arr,0,sizeof(arr)); 〃将数组清空while(!f.eof()) 〃文件不为空的条件设置{f»arr[line][0]»arr[line][l]»arr[line][2]»arr[line][3]»arr[line][4]»arr[line][5]>>arr[line][6];line++;)for(inti=0;i<line-l;i++)(cout«"学号:"<<arr[i][0]«"姓名:"くくarr[i][1]«" "«"年龄:"くくarr[i][2]くく""くく"班级:"くくarr[i][3]くく""くく"性别:"くくarr[i][4]くく""くく"用水量:"くくarr[i][5]くく""くく"用电量:"くくarr[i][6]くくendl;)f.close();})voidManage::display2()ifstreamF("D:\\tl.txt",ios::in);if(!F)cerrくく”打开文件错误「くくendl;return;)stringarr[100][100];〃定义一个string类型的二维数组,用来保存从文本内读取的信息intline=0;memset(arr,0,sizeof(arr));〃将数组清空while(!F.eofO)〃文件不为空的条件设置{F»arr[line][0]»arr[line][l]»arr[line][2]»arr[line][3]»arr[line][4]»arr[line][5]>>arr[line][6];line++;)for(inti=0;i<line-l;i++)(coutくく"エ号:"<<arr[i][0]«"姓名:"くくarr[i][1]«" "«"年龄:"くくarr[i][2]くく"〃くく"工作部门:"くくarr[i][3]くく"〃くく"性别:"くくarr[i][4]くく""くく"用水量:"くくarr[i][5]くく""くく"用电量:"くくarr[i][6]くくendl;))voidManage::display(){menu3();intn;cin>>n;switch(n){case1:display1();break;case2:display2();break;case3:fanhui();break;intm;do{menu();coutくく〃请选择:“;cin>>m;switch(m){case1:add();break;case2:search();break;case3:searchew();break;case4:edit();break;case5:delet();break;case6:display();break;case7:exit(0);break;)}while(m<l||m>7);)voidManage::editl()〃编辑学生函数(intflag=0;Studentm;ifstreamf("D:\\sl.txt,ios::in);coutくく”打开文件错误!"<<endl;return;elseinti=0;cout«"\n修改时:"<<endl;coutくく〃 "くくendl;cout<<"IIcout<<"Icoutくく〃IL按编号查询2.按姓名查询「くくendl;cout«/xII"くくendl;coutくく〃'n输入查找方式:〃;intchoice;cin»choice;switch(choice){case1:(stringnum;coutくく"、n输入所找者编号:";cin»num;while(!f.eof0)

(f>>stu[i].num>>stu[i].name>>stu[i].age>>stu[i].sex>>stu[i].banji>>stu[i].yongshuiliang»stu[i].yongdianliang;i++;)f.close();for(i=0;i<M;i++)(if(stu[i].numニ=num){flag=l;break;)if(flag==l)(coutくく〃学号:*«stu[i].numくく〃〃くく〃姓名:〃くくstu[i].nameくく〃“くく〃年龄:"くくstu[i].ageくく""くく"班级:"くくstu[i].banjiくく""くく"性别:"«stu[i].sex<<""くく"用水量:"くくstu[i].yongshuiliangくく""«"用电量:"<<stu[i].yongdianliang<<endl;cout«z/\n输入修改后的信息:〃くくendl;m.Input();for(i=0;i<M;i++)if(stu[i].Person::Getnum()==m.GetnumO){coutくく"修改失败!!!"くくendl;return;)stu[i]=m;〃把stu数组写到文件中ofstreamoutfile(z,D:\\sl.txt",ios::out);if(!outfile)(cerrくく”打开文件错误!"«endl;return;)else{outfileくくstu[i]・num<<" "«stu[i].name<<"“くくstu[i]・ageくく“"くくstu[i]・banjiくく〃"«stu[i].sex«""くくstu[i].yongshuiliangくく”"くくstu[i].yongdianliang<<endl;)coutくく"修改成功!”くくendl;return;)else{coutくく“查无此人!!!"くくendl;return;};break;case2:{stringb;coutくく"、n输入要修改者姓名:“;cin>>b;while(!f.eof())(f>>stu[i].num>>stu[i].name>>stu[i].age>>stu[i].sex>>stu[i].banji>>stu[i].yongshuiliang»stu[i].yongdianliang;i++;}f.close();for(i=0;i<M;i++)(if(stu[i].name==b)(flag=l;}break;)if(flag=l){coutくく"学号:"«stu[i].numくく""くく〃姓名:"«stu[i].name«""«"年龄:"くくstu[i].ageくく""くく"班级:"くくstu[i].banjiくく""くく"性别:"«stu[i].sex<<"“くく”用水量:〃くくstu[i].yongshuiliangくく" "くく〃用电量:〃くくstu[i].yongdianliang«endl;coutくく〃、n输入修改后的信息:〃くくendl;m.Input();for(i=0;i〈M;i++)if(stu[i]・Person::Getname()==m.GetnameO){coutくく〃修改失败!!!"«endl;return;jstu[i]=m;〃把stu数组写到文件中ofstreamoutfile2(Z,D:\\sl.txt",ios::out);if(!outfile2)(cerrくく”打开文件错误!〃くくendl;return;)else(outfile2«stu[i].numくく” "«stu[i].name<<""<<stu[i].age<<""<<stu[i].banji«""くくstu[i]・sexくく〃〃くくstu[i].yongshuiliangくく”〃くくstu[i].yongdianliang<<endl;)coutくく〃修改成功!〃くくendl;return;}else(coutくく〃查无此人!!!〃くくendl;return;};break;voidManage::edit2()〃编辑老师函数intflag=0;Teacherm;ifstreamF("D:\\t1.txt",ios::in);if(!F)(coutくく”打开文件错误!"«endl;return;}else(inti=0;cout«"\n修改时:"<<endl;coutくく”*«endl;coutくく"I I"«endl;coutくく〃I 1.按编号查询 2.按姓名查询 「くくendl;coutくく“|ドくくend];coutくく"、n输入查找方式:“;intchoice;cin»choice;switch(choice)(case1:(stringnum;cout«"\n输入所找者编号:〃;cin»num;while(!F.eof())(F>>tea[i].num>>tea[i].name>>tea[i].age>>tea[i].sex>>tea[i].branch»tea[i].yongshui1iang>>tea[i].yongdianliang;i++;

F.close();for(i=0;i<M;i++){if(tea[i].numニ=num)(flag=2;}break;}if(flagニニ2)(coutくく〃职エ号:"くくtea[i].numくく""くく"姓名:"くくtea[i].name«""«"年龄:"«tea[i].age«""«"性别:"«tea[i].sex«""«"工作部门:"«tea[i].branch«""«"用水量:"«tea[i].yongshuiliang«""«"用电量:"«tea[i].yongdianliang<<endl;cout«"\n输入修改后的信息:〃くくendl;m.Input();for(i二〇;iくM;i++)if(tea[i].Person::Getnum()ニニm.GetnumO)(coutくく〃修改失败!!!〃くくendl;return;)tea[i]二m;〃把stu数组写到文件中即可ofstreamoutri丄e(〃D:\\tl.txt〃,ios::out);if(!outfile){cerrくく〃打开文件错误!〃くくendl;return;}elseoutfileくくoutfileくくtea[i].numくく〃〃くくtea[i].nameくく”"くくtea[i].age<<" "«tea[i].sex«" "«tea[i].branch<<"“くくyongshui1iang<<""<<tea[i].yongdianliang<<endl;)coutくく”修改成功!"«endl;return;)else{coutくく“查无此人!!!〃くくendl;return;};break;case2:{stringb;coutくく"、n输入要修改者姓名:〃;cin>>b;while(!F.eof())(F>>tea[i].num>>tea[i].name>>tea[i].age>>tea[i].sex>>tea[i].branch»tea[i].yongshuiliang>>tea[i].yongdianliang;i++;}F.close();for(i=0;i<M;i++)if(tea[i].nameニニb){flag=2;}break;if(flag==2){coutくく"エ号:"くく numくく"〃くく"姓名:"くく name<<""<<"年龄:"«tea[i].age«""«"性别:"«tea[i].sex«""«"工作部门:"<<tea[i].branch«""«"用水量:zr«tea[i].yongshuiliang<<""くく"用电量:“くくtea[i].yongdianliang<<endl;cout«"\n输入修改后的信息:"くくendl;m.Input();for(i=0;i<M;i++)if(tea[i].Person::Getname()==m.GetnameO)(coutくく"修改失败!!Vendl;return;)tea[i]=m;〃把stu数组写到文件中ofstreamoutfile("D:\\tl.txt",ios::out);if(!outfile)(cerrくく"打开文件错误!"<<endl;return;)else'■(outfile«tea[i].num«""<<tea[i].name«""<<tea[i].age«""くくtea[i]・sex<<" "«tea[i].branch«" "«tea[i].yongshuiliang«""<<tea[i].yongdianliang<<endl;)coutくく"修改成功!〃くくendl;return;)else(coutくく”查无此人!!!"くくendl;return;voidManage::edit(){menu2();intn;cin>>n;switch(n)(case1:editl();break;case2:edit2();break;case3:fanhui();break;)intm;do{menu();coutくく"请选择:";cin>>m;switch(m){case1:add();break;case2:search();break;case3:searchew();break;case4:edit();break;case5:delet();break;case6:display();break;case7:exit(0);break;while(m<l||m>7);{voidManage::addl(){Studentm;ofstreamoutfile(,zD:\\sl.txt",ios::app);if(!outfile)cerrくく〃打开文件错误「くくendl;else{Student*pl=newStudent[M];inti,N;coutくく〃请输入N的值:〃くくendl;cin»N;coutくく〃要增加〃くくNくく"个学生记录!〃くくendl;for(i=0;i<N;i++)(coutくく〃学号:“くく〃〃;cin»pl[i].num;coutくく〃姓名:〃くく〃〃;cin»pl[i].name;coutくく〃性别:〃くく〃〃;cin»pl[i].sex;coutくく〃年龄:〃くく〃〃;cin»pl[i].age;coutくく〃班级:〃くく〃〃;cin»pl[i].banji;coutくく〃用电量:〃くく〃〃;cin»pl[i].yongdianliang;coutくく〃用水量:〃くく〃〃;cin»pl[i].yongshuiliang;utfile<<pl[i].numくく""<<pl[i].name<<""<<pl[i].age«""«pl[i].sex<<"〃くくpl[i].banjiくく〃“くくpl[i].yongdianliangくく""<<pl[i].yongshui1iang<<endl;outfile.close();delete[]pl;}}voidManage::add2()(Teacherm;ofstreamoutfilel(〃D:\\tl.txt”,ios::app);if(!outfilel)cerrくく〃打开文件错误!〃くくendl;else{Teacher*p2=newTeacher[M];inti,N;coutくく"请输入N的值:"くくendl;cin>>N;coutくく"要增加〃くくNくく"个老师记录!

温馨提示

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

评论

0/150

提交评论