宿舍系统代码实现_第1页
宿舍系统代码实现_第2页
宿舍系统代码实现_第3页
免费预览已结束,剩余14页可下载查看

下载本文档

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

文档简介

1、修改 用户数据VC+6.0 实现的代码因为数据库暂时没学会,利用了文本文件进行保存#include iostream#includestring#includefstream#includeiomanip using namespace count1=0,count11=0 。 / 学生总数和交钱的人数 int count2=0,count22=0 。class Stu public:Stu(double xwater=0,double xpower=0,double xgas=0,string xnum=a,stringxna=a 。 /学生类构造函数 void operat

2、or =(Stu S 。 / 赋值运算符重载friend ostream &operator / 插入运算符重载aleftS.number 。aleftS.name 。 /输出时左对齐 8 位 aleftS.water 。aleftS.power 。 aleftS.gas 。 aleft 。 aleft 。 aleft 。 aleft 。if(S.flag!=0a 已交 。else a未交”。cout 。/计算水费double SGetC( 。/计算电费double SGetG( 。/计算煤气费double Stotal( 。 /计算总费用double water,power,gas,wate

3、r_rate,circuit,gas_rate,total 。 int flag 。string number,name。Stu:Stu(double xwater,double xpower,double xgas,string xnum,string xna / 学生类构造函数 water=xwater 。 power=xpower 。 gas=xgas。 number=xnum 。 name=xna。 flag=0。void Stu:operator =(Stu S / 赋值运算符重载name=S.name。 number=S.number。 water=S.water 。 power=

4、S.power 。 gas=S.gas。double Stu:SGetW( / 计算水费if(water water_rate=0 。elsewater_rate=4.2*(water-10 。return water_rate 。double Stu:SGetC( / 计算电费if(powercircuit=0 。elsecircuit=0.6*(power-10 。return circuit 。double Stu:SGetG(/ 计算煤气费if(gas gas_rate=0。elsegas_rate=2.3*(gas-10 。return gas_rate。double Stu:Sto

5、tal( / 计算总的钱total=SGetG(+SGetW(+SGetC( 。return total 。/*class arrayofStu / 学生类计算public:arrayofStu(int sz=1 size=sz 。 student=new Stusize 。 / 构造函数arrayofStu( delete student 。 void xuesheng( 。 / 学生用户主菜单 void jiaofei( 。/ 学生交费菜单void regist( 。/ 登记学生void amend( 。/ 修改用户菜单void add( 。/ 增加用户void delet(。 / 删除用

6、户菜单void nad( 。/ 姓名删除void numd( 。/ 学号删除void check( 。/ 查询菜单void nacheck( 。/ 姓名查询void numcheck(。/ 学号查询void naj( 。/ 输入姓名交费void numj( 。/ 输入学号交费void display( 。/ 查看交费情况void save( 。private:int size。Stu *student 。void arrayofStu:regist( / 学生用户注册 int i=0 。ifstream f(Stu.txt 。 while(f.good( / !f.eof( fstudenti

7、.number 。 。 fstudenti.water 。 fstudenti.power 。 fstudenti.gas 。i+ 。f.close( 。 count1=i 。couttt 注册成功 ! / 输入姓名交费 char ch 。 double money,money2 。 coutttt 欢迎使用姓名交费功能 endl 。 string na。cout 请输入学生姓名 :na 。int fl=0 。for(int i=0。i if(na=fl=1 。if(studenti.flag cout 该学生已缴纳过费用 endl 。

8、elsecout 你应该交 钱 endl 。 coutch 。 if(ch=Y|ch=ystudenti.flag=1 。cout 你实际交的钱是 :money 。if(moneystudenti.Stotal( cout 找 零 钱 money cout 交 的 钱 不 够 , 还 应 交 -money钱endl。coutmoney2 。cout 交费成功 。else xuesheng(。if(!flcout 没有这个学生 / 输入学号交费 coutttt 欢迎使用学号交费功能 endl 。 string num 。 double money,money2 。 char ch。cout 请输

9、入学生学号 :num 。int fl=0 。for(int i=0 。 iif(num=studenti.numberif(studenti.flagfl=1 。 cout 该学生已缴纳过费用 endl 。 elsecout你应该交钱endl。 coutch 。if(ch=Y|ch=ystudenti.flag=1 。 cout 你实际交的钱是 :money 。if(moneystudenti.Stotal( cout 找 零 钱 money cout 交 的 钱 不 够 , 还 应 交 -money钱endl。coutmoney2 。cout 交费成功 。else xuesheng(。if(

10、!flcout 没有这个学生 / 增加学生coutttt 欢迎使用增加学生功能 endl 。cout 请输入学生的姓名 : 。cout 请输入学生的学号 :studentcount1.number 。cout 请输入学生的用水量 :studentcount1.water 。cout 请输入学生的用电量 :studentcount1.power 。cout 请输入学生的用煤气量 :studentcount1.gas 。count1+ 。 coutttt 学生信息已被成功的增加 !/ 按姓名删除coutttt 欢迎使用姓名删除学生功能 endl 。/*couts

11、tudent0 。 。 */int fl=0 。int i,j 。string na。cout 请输入要删除学生的姓名 na 。for(i=0 。 i if(na=fl=1 。 break。 if(flfor(j=i 。 jstudentj=studentj+1 。count1- 。cout 你已成功删除学生信息 endl 。else cout没有这个学生int i 。 if(count11=0 cout 暂时还无学生交费 endl 。elsecout 已交费人员信息 endl 。cout 学号 姓名 用水量 用电量 用煤气量

12、 水费 电费 煤气费 总额 是否交费 endl 。for( i=0 。 i if(studenti.flagcout cout 所有学生均以交费 endl 。 else cout 未交费人员信息 endl 。cout 学号 姓名 用水量 用电量 用煤气量 水费 电费 煤气费 总额 是否交费 endl 。for(i=0 。 i if(!studenti.flagcout / 按学号删除coutttt 欢迎使用学号删除学生功能 endl 。int fl=0 。int i,j 。string num 。cout 请输入要删除学生的学号 num 。for(i=0 。 iif(num=studenti.

13、numberfl=1 。 break。 if(flfor(j=i 。 jstudentj=studentj+1 。count1- 。cout 你已成功删除学生信息 endl 。elsecout 没有这个学生 / 姓名查询 coutttt 欢迎使用姓名查询学生功能 endl 。int i,fl=0 。string na。cout 请输入要查找的姓名 na 。for(i=0。iif(na= fl=1 。 break。 if(flcout学号 姓名 用水量 用电量 用煤气量 水费 电费 煤气费 总额 是否交费 endl 。coutstudentiendl 。 else co

14、ut没有这个学生 / 学号查询 coutttt 欢迎使用学号查询学生功能 endl 。int i,fl=0 。string num 。cout 请输入要查找的学号 num 。for(i=0 。 iif(num=studenti.number fl=1 。 break。 if(flcout学号 姓名 用水量 用电量 用煤气量水费 电费 煤气费 总额 是否交费 endl 。coutstudentiendl 。elsecout 没有这个学生 ofstream f(Stu2.txt 。f学号姓名用水量用电量用煤气量水费电费 煤气费 总额 是否交费 endl 。for(int i=0 。 ifstude

15、nti 。/cout 恭喜你 ,文件已成功保存 / 删除学生菜单int choice 。couttttt*endl 。 couttttt 删除信息 endl 。 couttttt 1, 按学号删除 endl 。 couttttt 2, 按姓名删除 endl 。 couttttt 3, 返回主菜单 endl 。 couttttt 0, 返回上一层 endl 。 couttttt* cout 请输入你的选择 choice 。 switch(choice case 1: numd( 。 break。 / 学号删除 case 2: nad(。 break。 / 姓名删除 case 3: xueshen

16、g(。 break 。 /返回学生管理主菜单case 0: amend(。 break。 / 返回上一层 if(choice=0 break。void arrayofStu:jiaofei( / 学生缴费菜单int choice 。couttttt*endlcouttttt*- 学生缴费 -*endl 。couttttt*1, 输入学号交费 *endl 。 couttttt*2, 输入姓名交费 *endl 。couttttt*0, 返回上一层 *endl 。couttttt*cout 请输入你的选择 choice 。/ 输入学号计费/输入姓名计费/ 返回上一层switch(choicecase

17、 1: numj( 。 break。 case 2: naj(。break。case 0:xuesheng(。 break。if(choice=0 break。void arrayofStu:xuesheng( / 学生用户主菜单 int choice 。couttttt 欢迎使用学生用户管理系统 endlendl 。cout*endl cout*endl cout 友情提示 :第一次使用时 ,要进行注册 ,否则 , 后果自负 !endlcouttttt*1, 注册学生*endl 。couttttt*2,couttttt*3,couttttt*4,修改用户缴纳费用查询费用*endl*endl*

18、endlcouttttt*5,couttttt*6,查看交费情况 -*endl 。 保存信息到文件 -*endlcouttttt*0,返回上一层 *endl 。cout 请输入您的选择 choice 。switch(choicecase 1: regist(。 break。 / 注册case 2: amend(。 break。 / 修改case 3: jiaofei( 。 break。 / 缴纳费用case 4: check(。 break 。case 5: display( 。 break 。case 6: save(。 break 。case 0: break。 if(choice=0 b

19、reak 。 void arrayofStu:amend( / 修改用户菜单 int choice 。couttttt 修改学生信息 endlendl 。 couttttt1, 增加学生 endl 。 couttttt2, 删除学生 endl 。 couttttt0, 回上一层 cout 请输入你的选择 choice 。switch(choicecase 1: add( 。 break。 case 2: delet(。 break。 case 0: xuesheng(。 break。 if(choice=0 break。void arrayofStu:check( / 查询菜单int choi

20、ce 。couttt 查询学生信息 endlendl 。 cout1, 按姓名查找endl 。cout2, 按学号查找endl 。cout0, 返回上一层endl 。cout=cout 请输入您的选择 choice 。switch(choicecase 1: nacheck(。 break 。 /输入姓名查找case 2: numcheck(。 break。 / 输入学号查找case 0:xuesheng(。 break。 /如果是 break 时分析if(choice=0break 。/*/*class Teacherpublic:Teacher( double xwater=0,doubl

21、e xpower=0,double xgas=0,string xname=awater=xwater。power=xpower。gas==xname。flag=O。 void operator =(Teacher S 。/赋值运算符重载friend ostream &operator / 插入运算符重载aleftS.name 。aleftS.water 。aS.power 。aS.gas。a 。 a 。 a 。 a 。/* aS.name 。 aS.water 。 aS.power 。 aS.gas 。 a 。 a 。 a 。 aa 已交 。else a未交”。cout 。

22、/ 水费计算double TGetC( 。/电费计算double TGetG( 。/煤气费计算double Ttotal( 。/计算总的钱string name。double water,power,gas,water_rate,circuit,gas_rate,total 。int flag 。void Teacher:operator =(Teacher S / 赋值运算符重载 name=S.name。 water=S.water。 power=S.power 。gas=S.gas。double Teacher:TGetW( / 计算水费water_rate=3.7*water 。retu

23、rn water_rate。double Teacher:TGetC( / 计算电费circuit=0.45*power 。return circuit 。double Teacher:TGetG( / 计算煤气费gas_rate=1.9*gas。return gas_rate。double Teacher:Ttotal( / 计算应该付的的钱 total=TGetW(+TGetC(+TGetG( 。 return total 。/* class arrayofTeacher /老师类数组计算 arrayofTeacher( int sz=1size=sz 。 teacher=new Teac

24、hersize。 arrayofTeacher( delete teacher 。 regist( 。 / 注册教工/ 教工主菜单/ 修改用户菜单public:void/增加用户/ 删除用户/ 查询是否交费/ 交水电煤气费/ 展示所有的用户/查看交费情况void jiaogong( 。 void amend( 。 void add( 。void delet( 。void check( 。 void jiaofei( 。/ void display( 。 void display( 。 void save( 。private:int size 。Teacher *teacher。 。void a

25、rrayofTeacher:regist( / 教工用户注册 int i=0 。ifstream f(Teacher.txt 。 while(f.good( 。 fteacheri.water 。 fteacheri.power 。 fteacheri.gas 。 i+ 。 f.close( 。 count2=i-1 。couttt 注册成功,祝你使用愉快 / 用户交费char ch。string na。 coutttt 欢迎使用交费功能 endl 。cout 请输入姓名 :na 。int fl=O。double money,money2。for(int i=0

26、。 i if(na= fl=1 。if(teacheri.flagcout 该教工已缴纳过费用 endl 。 break。 elsecout你应该交钱endl。 coutch 。 if(ch=Y|ch=y teacheri.flag=1 。cout 你实际交的钱是 :money 。if(moneyteacheri.Ttotal(cout 找 零 钱money cout 交 的 钱 不 够 , 还 应 交 -money钱endl。coutmoney2 。 cout 交费成功 。else jiaogong( 。if(!flcout 没有这个教工 / 增加教工coutttt

27、 欢迎使用增加教工功能 endl 。cout 请输入教工的姓名 。cout 请输入教工的用水量 teachercount2.water 。cout 请输入教工的用电量 teachercount2.power 。 cout 请输入教工的用煤气量 teachercount2.gas 。 count2+ 。 coutttt 教工已被成功增加 ! / 删除教工 coutttt 欢迎使用删除教工功能 endl 。 int fl=0 。 int i,j 。 string name。 cout 请输入要删除教工的姓名 name 。for(i=0。iif(name=tea

28、 fl=1 。 break。if(flfor(j=i 。 j / 不能写成 for(j=i 。 j teacherj=teacherj+1 。count2-。cout 你已成功删除教工信息 endl 。 else co u t 没有这个教工 / 查找交费情况 coutttt 欢迎使用查费功能 endl 。string i=0,fl=0 。cout 请你输入姓名 na。for(i=0 。 iif(na=fl=1 。 break。 if(flcout姓名用水量用电量用煤气量水费电费煤 气费 总额 是否交费 endl 。coutteache

29、riendl 。elsecout 没有这个教工 / 查看交费情况int i 。if(count22=0cout 暂时还无教工交钱 endl 。 else cout 已交费人员信息 endl 。cout 姓名 用水量 用电量 用煤气量 水费 电费 煤气费 总额 是否交费 endl 。for( i=0。iif(teacheri.flagcoutteacheri 。 /cout cout 所有的教工均以交钱 endl 。 else cout 未交费人员信息 endl 。cout姓名用水量用电量 用煤气量 水费 电 费 煤气费 总额 是否交费 endl 。for(i=0 。 iif(!teacheri.flagcoutofstream f(Teacher2.txt 。f学号 姓名 用水量 用电量 用煤气量 水费 电费 煤气费总额是否交费endl。for(int i=0 。 i fteacheri。couttt 教工信息以成功保存到磁盘文件中 / 修改菜单int choice 。couttt修改教工信息 endlendl 。cout1, 增加教工 endl 。cout2, 删除教工 endl 。cout0, 返回上一层 endl 。endlcoutcout 请输入你的选择

温馨提示

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

评论

0/150

提交评论