分享
分销 收藏 举报 申诉 / 64
播放页_导航下方通栏广告

类型水电煤气标准管理系统.doc

  • 上传人:精****
  • 文档编号:3002066
  • 上传时间:2024-06-12
  • 格式:DOC
  • 页数:64
  • 大小:340.04KB
  • 下载积分:16 金币
  • 播放页_非在线预览资源立即下载上方广告
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    水电 煤气 标准 管理 系统
    资源描述:
    面向对象程序设计课外实践报告 项 目 名 称: 水电气管理系统 所 在 班 级: 计算机科技与技术 小 组 成 员: 王耀权、董金明 指 导 教 师: 葛文英 起 止 时 间: .11.25——.12.20 项目基本信息 项目名称 设计一种水电气管理系统 项目简介 1.问题描述 设计一种水电管理信息系统,可以对高校水电费用进行管理,涉及登记费用、查询费用和住户信息管理等。在设计时要考虑到学生和教工在用水电时不同,学生可以免费使用一定额度水电,超过这个额度水电后来必要自费使用,且自费某些水电费价格原则要高于教工收费原则(重要是节约资源)。 2.基本规定 ⑴实现对顾客信息录入。 ⑵实现水电煤气数据录入。 ⑶计算并查询顾客应缴费用。 ⑷查询未缴纳费用名单。 3.测试数据 可选用社区物业管理部门数据,也可采用手工输入不少于10个顾客信息数据。 小构成员 王耀权、董金明 任务分工 这个程序是一起做,王耀权重要做是学生水电气管理系统, 董金明做是教师水电气管理系统,然后再会合改错误,最后一起把这个是实验报告完毕。 一、问题描述及分析: 设计一种水电管理信息系统,可以对高校水电费用进行管理,涉及登记费用、查询费用和住户信息管理等。在设计时要考虑到学生和教工在用水电时不同,学生可以免费使用一定额度水电,超过这个额度水电后来必要自费使用,且自费某些水电费价格原则要高于教工收费原则(重要是节约资源)。 二、功能模块及构造描述: 功能模块: 1.在主函数中通过度支选取可以跳转不同功能选项进而实现  2.在显示主菜单函数中,咱们通过设计和谐界面来与顾客进行交互。在“请选取相应功能(1-3):”中使用者输入非1-3数字或其她字符时,系统提示结束然后从新开始。 3.进入学生管理系统菜单或者教师管理系统菜单会浮现相应功能(1-6):分别相应有交费功能、查询一种功能、、查询所有功能、增长功能、删除功能。 学生查询功能分别为学号和姓名,教师查询功能为编号和姓名,也可以查询到与否缴费,如未交费就会分别显示水费、电费、煤气费、费用并显示总费用。 4.交费时它会显示费用多少,实际交了多少钱,如果钱交多了显示应找零多少。 构造描述: 1.一方面建立了Feebz类,用于初始化身份证号码、姓名、用水电、煤气量,又定义了缴费函数Get(),用在有人缴费函数体中,从键盘输入缴费用,一开始咱们在Get(),中没有对缴费用进行累加,在查询信息时现实应缴费用不对的,通过咱们努力,检查出错误并加以改正,让程序更加完善。  2.用Feebz类派生出StuMan和|TeaMan类,其中有计算应当缴费用,StuMan类比TeaMan类多了免费。  3.在保存文献解决中,需考虑到“查询失败”和“重新输入”等诸多内容 三、重要流程描述: 水 电 气 管 理 系 统 选操作对象 退 出 系 统 教 师 学 生 选取操作对象 缴 纳 水 电 气 费 查询一种学生水电气用 量 查询所有学生交费状况 增 加 学 生 信 息 删 除 学 生 信 息 退 出 系 统 缴 纳 水 电 气 费 查询一种教师水电用量 查询所有教师缴费状况 增 加 教 师 信 息 删 除 教 师 信 息 退 出 系 统 退 出 退 出 系 统 流程图: 选取操作对象 四、使用阐明: 程序运营后,进入界面: 在如上所示界面下,依照提示进行基本操作。 五、 问题及解决办法 问题1. 觉得该系统局限性就是不可以实现查看某个人用水量、用电量或者用气量中一种和应当支付钱。 问题2尚有一种局限性就是程序感觉不够简洁,有点罗嗦。 解决办法:对于解决这些问题,觉得应当定义子函数来提取每个人信息这样就可以实现查看某人用水量、用电量、或者用气量一种和应当支付钱。对于问题2这需要有夯实基本功,能都用最简短源程序代码去解决一种相似问题。 六、 实践总结: 课程设汁过程中遇到了诸多麻烦,虽然我早有心理准备,但还是令我伤透了脑筋,只怪自己平时看书太少,其实有诸多东匹在书上都可以找到答案,可是还是有某些问題我实在没有办法解决,最后通过教师和同窗们努力解决了一种又一种问题。 通过这次课程设计,我学习到了诸多知识,并且给了我一种星月时间去重新认真有目性C++语言进行复习,查找补漏,为后续课程做充分准备。设计过程是困难,由于此前没有类似经验刚开始几天没有太多进展,但是咱们没有灰心,通过认真思考以及教师协助,最咱们有了较好设设计办法。 程序完毕使咱们很高兴,所有疲倦己经不算什么了,当前觉得要想编写一种好程序真很累,它需要牢固基本知识作为 铺垫,所有源代码编写输入以及每一步调试都容不得一点马虎,整个牢固基本是编程最基本需要,要想好每一步算法,要想到每一种相应函数。 我觉得一月课程设计远远比我自己看一学期书 收获多,实践是检查知识最隹手段。 七、 源代码: #include <iostream> #include <string> #include <cstdlib> #include <iomanip> #include <fstream> using namespace std; int ns,nt; class Feebz // 学生信息类 { public: Feebz(string Num="",string Name="董金明", double water=1,double power=0,double gas=10); // 构造函数 friend ostream &operator <<(ostream &out,Feebz &r) //运算符重载 {out<<setw(12)<<left<<r.number; out<<setw(8)<<left<<r.name; out<<setw(8)<<left<<r.water; out<<setw(8)<<left<<r.power; out<<setw(8)<<left<<r.gas; out<<setw(8)<<left<<r.GetW(); out<<setw(8)<<left<<r.GetP(); out<<setw(8)<<left<<r.GetG(); out<<setw(8)<<left<<r.GetTotal(); if(r.flag) out<<"已交"; else out<<"未交"; return out; } void operator =(Feebz r); // 运算符重载 double GetW(); // 计算学生水费 double GetP(); // 计算学生电费 double GetG(); // 计算学气愤费 double GetTotal() {return GetW()+GetP()+GetG();} // 计算学生总费用 string number,name;int flag; double water,power,gas,Waterprice,Powerprice,Gasprice;}; Feebz::Feebz(string Num,string Name, double Water, double Power, double Gas) // 构造函数 {number=Num;name=Name;water=Water; power=Power;gas=Gas;flag=0; } void Feebz::operator =(Feebz r) // 赋值运算符重载 {name=r.name; number=r.number; water=r.water; power=r.power; gas=r.gas;} double Feebz::GetW() // 计算学生水费 { if(water<=6) Waterprice=0; else Waterprice=0.6*(water-6); return Waterprice;} double Feebz::GetP() // 计算学生电费 {if(power<=6) Powerprice=0; else Powerprice=0.6*(power-6); return Powerprice;} double Feebz::GetG() // 计算学气愤费 {if(gas<=6) Powerprice=0; else Powerprice=0.6*(gas-6); return Powerprice;} class StuMan // 学生管理类 {public: StuMan(int sz=50) { size=sz; St=new Feebz[size];} //构造函数 ~StuMan() {delete [] St;} // 析构函数 void MainMenu(); // 主菜单 void FeeMenu(); // 学生交费菜单 void NumFee(); // 输入学号交费 void NameFee(); // 输入姓名交费 void CheckMenu(); // 学生查询菜单 void NumCheck(); // 输入学号查询 void NameCheck(); // 输入姓名查询 void Add(); // 增长学生功能 void DeleteMenu(); // 学生删除菜单 void NumDelete(); // 输入学号删除 void NameDelete(); // 输入姓名删除 void Regist(); void Chakan(); // 学生查看作用 private: int size;Feebz *St;}; void StuMan::MainMenu() // 主菜单 {system("cls"); int choice; cout<<" ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆"<<endl; cout<<" ☆ ☆"<<endl; cout<<" ☆ 水电煤气管理系统 ☆"<<endl; cout<<" ☆ ☆"<<endl; cout<<" ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆"<<endl; cout<<" 欢 迎 使 用 教 师 水 电 气 费 管 理 系 统"<<endl; cout<<" 1.缴纳水电气费"<<endl; cout<<" 2.查询一种同窗水电气费用量"<<endl; cout<<" 3.查看所有同窗缴费状况"<<endl; cout<<" 4.增长学生信息"<<endl; cout<<" 5.删除学生信息"<<endl; cout<<" 6.退出系统"<<endl; while(1) { cout<<"请选取:"; cin>>choice; switch(choice) { case 1:FeeMenu(); break; case 2:CheckMenu(); break; case 3:Chakan(); break; case 4:Add(); break; case 5:DeleteMenu(); break; default: break; }if(choice==6) break; } } void StuMan::Regist() { int i=0; ifstream tfile("student.txt"); while(tfile.good()) { tfile>>St[i].number; tfile>>St[i].name; tfile>>St[i].water; tfile>>St[i].power; tfile>>St[i].gas; i++; } tfile.close(); ns=i; } void StuMan::FeeMenu() //学生交费菜单 { system("cls"); int choice; cout<<" ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆"<<endl; cout<<" ☆ ☆"<<endl; cout<<" ☆ 水电煤气管理系统 ☆"<<endl; cout<<" ☆ ☆"<<endl; cout<<" ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆"<<endl; cout<<" 学 生 交 费 菜 单"<<endl; cout<<" 1.按照学号交费"<<endl; cout<<" 2.按照姓名交费"<<endl; cout<<" 3.返回主菜单"<<endl; cout<<" 4.退出系统"<<endl; while(1) { cout<<"请选取:"; cin>>choice; switch(choice) { case 1:NumFee(); break; case 2:NameFee(); break; case 3:system("cls"); MainMenu(); break; default:exit(1); } if(choice==3) break; } } void StuMan::NumFee() // 输入学号交费 { string number; float money; int flag=0,flag1=0; cout<<"欢迎使用交费功能"<<endl; cout<<"请输入学生学号:"; cin>>number; for(int i=0;i<ns;i++) if(number==St[i].number) { flag1=1; cout<<"该同窗应当交费共"<<St[i].GetTotal()<<"元"<<endl; cout<<"该同窗实际交钱:"; cin>>money; if(money<St[i].GetTotal()) { cout<<"该同窗需再补交"<<St[i].GetTotal()-money<<"元"<<endl; St[i].flag=0;MainMenu();} else { cout<<"该同窗交费成功,且找零钱为"<<money-St[i].GetTotal()<<"元"<<endl; St[i].flag=1;MainMenu(); } break; } if(!flag1) { system("cls"); cout<<"该学生学号输入错误,请重新使用该功能!"<<endl; NumFee(); } } void StuMan::NameFee() // 输入姓名交费 { string name; float money; int flag=0,flag1=0; cout<<" 欢迎使用交费功能"<<endl; cout<<"请输入学生姓名:"; cin>>name; for(int i=0;i<ns;i++) if(name==St[i].name) { flag1=1; cout<<"该同窗应当交费共"<<St[i].GetTotal()<<"元"<<endl; cout<<"该同窗实际交钱:"; cin>>money; if(money<St[i].GetTotal()) { cout<<"该同窗需再补交"<<St[i].GetTotal()-money<<"元"<<endl; St[i].flag=0; MainMenu(); } else { cout<<"该同窗交费成功,且找零钱为"<<money-St[i].GetTotal()<<"元"<<endl; St[i].flag=1; MainMenu(); } break; } if(!flag1) { system("cls"); cout<<"该学生姓名输入错误,请重新使用该功能!"<<endl; NameFee(); } } void StuMan::CheckMenu() // 学生查询菜单 { system("cls"); int choice; cout<<" ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆"<<endl; cout<<" ☆ ☆"<<endl; cout<<" ☆ 水电煤气管理系统 ☆"<<endl; cout<<" ☆ ☆"<<endl; cout<<" ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆"<<endl; cout<<" 学 生 查 询 菜 单"<<endl; cout<<" 1.按照学号查询"<<endl; cout<<" 2.按照姓名查询"<<endl; cout<<" 3.返回主菜单"<<endl; cout<<" 4.退出系统"<<endl; while(1) { cout<<"请选取:"<<endl; cin>>choice; switch(choice) { case 1:NumCheck(); break; case 2:NameCheck(); break; case 3:system("cls"); MainMenu(); break; default:exit(1); } if(choice==3) break; } } void StuMan::NumCheck() // 输入学号查询 { string number; int flag1=0,i,item; cout<<"欢迎使用查询功能"<<endl; cout<<"请输入需要查找学生学号:"; cin>>number; for(i=0;i<ns;i++) if(number==St[i].number) { flag1=1; item=i; break; } if(flag1) { cout<<"学号 "<<"姓名"<<"用水量 "<<"用电量 "<<"用煤气量 "<<"水费 "<<"电费 "<<"煤气费 "<<" 总额 "<<" 交费否"<<endl; cout<<St[item]<<endl; } else { system("cls"); cout<<"该学生学号输入错误,请重新使用该功能!"<<endl; NumCheck(); } } void StuMan::NameCheck() // 输入姓名查询 { string name; int flag1=0,i,item; cout<<"欢迎使用查询功能"<<endl; cout<<"请输入需要查找学生姓名:"; cin>>name; for(i=0;i<ns;i++) if(name==St[i].name) { flag1=1; item=i; break; } if(flag1) { cout<<"学号"<<"姓名"<<" 用水量"<<"用电量 "<<"用煤气量 "<<"水费"<<"电费 "<<"煤气费 "<<" 总额 "<<" 交费否"<<endl; cout<<St[item]<<endl; } else { system("cls"); cout<<"该学生学号输入错误,请重新使用该功能!"<<endl; NameCheck(); } } void StuMan::DeleteMenu() // 学生删除菜单 { system("cls"); int choice; cout<<" ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆"<<endl; cout<<" ☆ ☆"<<endl; cout<<" ☆ 水电煤气管理系统 ☆"<<endl; cout<<" ☆ ☆"<<endl; cout<<" ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆"<<endl; cout<<" 学 生 删 除 菜 单"<<endl; cout<<" 1.按照学号删除"<<endl; cout<<" 2.按照姓名删除"<<endl; cout<<" 3.返回主菜单"<<endl; cout<<" 4.退出系统"<<endl; while(1) { cout<<"请选取:"; cin>>choice; switch(choice) { case 1:NumDelete(); break; case 2:NameDelete(); break; case 3:system("cls"); MainMenu(); break; default:exit(1); } if(choice==3) break; } } void StuMan::NumDelete() // 输入学号删除 { string number; int item=1,i,j; cout<<"欢迎使用删除功能"<<endl; cout<<"请输入要删除学生学号:"; cin>>number; for(i=0;i<ns;i++) if(number==St[i].number) { item=0; j=i; break; } if(!item) { for(j=i;j<ns-1;j++) St[j]=St[j+1]; cout<<"该学生信息已被删除!"<<endl; } if(item) {system("cls"); cout<<"该学生学号输入错误,请重新使用该功能!"<<endl; NumDelete(); } } void StuMan::NameDelete() // 输入姓名删除 { string name; int item=1,i,j; cout<<"欢迎使用删除功能"<<endl; cout<<"请输入要删除学生姓名:"; cin>>name; for(i=0;i<ns;i++) if((name==St[i].name)) { item=0; j=i; break; } if(!item) for(j=i;j<ns-1;j++) St[j]=St[j+1]; cout<<"该学生信息已被删除!"<<endl; if(item) {system("cls"); cout<<"该学生姓名输入错误,请重新使用该功能!"<<endl; NameDelete(); } } void StuMan::Add() // 增长学生功能 { int n,i,j=1; cout<<"请输入你要增长学生数:"; cin>>n; i=ns; for(;ns<i+n;ns++) {cout<<"请输入第"<<j<<"个学生学号、姓名、水用量、电用量、用气量:"<<endl; cin>>St[ns].number; cin>>St[ns].name; cin>>St[ns].water; cin>>St[ns].power; cin>>St[ns].gas; j++; } } void StuMan::Chakan() // 学生查看功能 { int i; cout<<"已交费学生信息"<<endl; cout<<"学号 "<<"姓名 "<<" 用水量"<<"用电量"<<"用煤气量 "<<"水费 "<<"电费"<<"煤气费"<<" 总额 "<<" 交费否"<<endl; for( i=0;i<ns;i++) if(St[i].flag) cout<<St[i]; cout<<endl; cout<<endl; cout<<endl; cout<<"未交费学生信息"<<endl; cout<<"学号"<<"姓名"<<" 用水量"<<"用电量 "<<"用煤气量"<<"水费 "<<"电费 "<<"煤气费"<<" 总额 "<<" 交费否"<<endl; for(i=0;i<ns;i++) if(!St[i].flag) cout<<St[i]; } class TFeebz // 教师信息类 { public: TFeebz(string Num="01",string Name="王耀权",double water=1,double power=0,double gas=10) ; friend ostream &operator <<(ostream &out,TFeebz &r) // 运算符重载 { out<<setw(12)<<left<<r.number; out<<setw(8)<<left<<r.name; out<<setw(8)<<left<<r.water; out<<setw(8)<<left<<r.power; out<<setw(8)<<left<<r.gas; out<<setw(8)<<left<<r.GetW(); out<<setw(8)<<left<<r.GetP(); out<<setw(8)<<left<<r.GetG(); out<<setw(8)<<left<<r.GetTotal(); if(r.flag) out<<"已交"; else out<<"未交";
    展开阅读全文
    提示  咨信网温馨提示:
    1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
    2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
    3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
    4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
    5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
    6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

    开通VIP折扣优惠下载文档

    自信AI创作助手
    关于本文
    本文标题:水电煤气标准管理系统.doc
    链接地址:https://www.zixin.com.cn/doc/3002066.html
    页脚通栏广告

    Copyright ©2010-2026   All Rights Reserved  宁波自信网络信息技术有限公司 版权所有   |  客服电话:0574-28810668    微信客服:咨信网客服    投诉电话:18658249818   

    违法和不良信息举报邮箱:help@zixin.com.cn    文档合作和网站合作邮箱:fuwu@zixin.com.cn    意见反馈和侵权处理邮箱:1219186828@qq.com   | 证照中心

    12321jubao.png12321网络举报中心 电话:010-12321  jubao.png中国互联网举报中心 电话:12377   gongan.png浙公网安备33021202000488号  icp.png浙ICP备2021020529号-1 浙B2-20240490   


    关注我们 :微信公众号  抖音  微博  LOFTER               

    自信网络  |  ZixinNetwork