2022年c++课程设计……银行储蓄系统复习进程.pdf
-
资源ID:12785562
资源大小:347.57KB
全文页数:18页
- 资源格式: PDF
下载积分:4.3金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
2022年c++课程设计……银行储蓄系统复习进程.pdf
c+课 程 设 计 银行 储 蓄 系 统精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 1 页,共 18 页 - - - - - - - - - - 课程设计 (论文 )任务书软件工程学院桥梁专业 3 班一、课程设计 ( 论文) 题目银行储蓄系统二、课程设计 ( 论文) 工作自 2011 年 6 月 13 日起至 2011年 6月20 日止。三、课程设计 ( 论文) 地点: 软件学院软件实训中心四、课程设计 ( 论文) 内容要求:1本课程设计的目的(1)使学生掌握 C+ 的基本语法以及程序编辑、运行过程;(2)培养学生掌握程序设计的基本思路和方法;(3)使学生掌握程序的调试方法;(4)培养学生分析、解决问题的能力;(5)提高学生的科技论文写作能力。2课程设计的任务及要求1)基本要求: 设计一简易的银行储蓄系统,能承担用户的开户、销户、存款和取款业务。要求使用结构体或对象存储账户信息,系统要求系统以菜单方式工作。(1)开户(输入姓名、身份证号,如不存在,则新开账户)(2)销户(如有余额,先取款,再销户)(3)取款(输入取款金额,账户余额不足时提示重新输入,取款成功后显示账户余额)(4)存款(输入存款金额,存款成功后显示账户余额)(5)查询(输入帐号,查询该帐号所有信息)2)创新要求:在基本要求达到后,可进行创新设计,如改善算法性能;对系统进行功能扩充。3)课程设计论文编写要求(1)要按照书稿的规格打印誊写课程设计报告(2)课程设计报告书内容主要包括目录、绪论、正文、小结、参考文献、附录等(3)课程设计报告书一律使用由学校统一印制的封面,采用黑色墨水工整书写,并装订成册。如采用计算机打印,应该配上封面装订成册。4)答辩与评分标准:(1)完成原理分析: 20分;(2)完成设计过程: 40分;(3)完成调试: 20分;精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 2 页,共 18 页 - - - - - - - - - - (4)回答问题: 20分。5)参考文献:(1)刘觉夫 .c+ 程序设计(第二版)北京邮电大学出版社(2) 谭浩强 c+面向对象程序设计清华大学出版社6)课程设计进度安排内容天数10地点构思及收集资料 2图书馆组装与调试 3实验室撰写报告 2图书馆、实验室学生签名:2011 年 6 月 13 日课程设计 (论文) 评审意见(1)完成原理分析( 20分):优()、良()、中()、一般()、差();(2)设计分析(20分):优()、良()、中()、一般()、差();(3)完成调试(20分):优()、良()、中()、一般()、差();(4)论文撰写(20分):优()、良()、中()、一般()、差();(5)回答问题(20分):优()、良()、中()、一般()、差();(6)格式规范性及考勤是否降等级:是()、否()评阅人:职称:2011 年 6 月 23 日精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 3 页,共 18 页 - - - - - - - - - - 目录一、课程设计任务概述 . - 4 - 二、算法设计思想及流程图 . - 5 - 三、程序清单 . - 7 - 四、程序调试与运行结果 . - 13 - 五、设计心得(小结) . - 15 -精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 4 页,共 18 页 - - - - - - - - - - 一、课程设计任务概述设计一简易的银行储蓄系统,能承担用户的开户、销户、存款和取款业务。要求使用结构体或对象存储账户信息,系统要求系统以菜单方式工作,主要功能有:(1)开户(输入姓名、身份证号,如不存在,则新开账户)(2)销户(如有余额,先取款,再销户)(3)取款(输入取款金额,账户余额不足时提示重新输入,取款成功后显示账户余额)(4)存款(输入存款金额,存款成功后显示账户余额)(5)查询(输入帐号,查询该帐号所有信息)精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 5 页,共 18 页 - - - - - - - - - - 二、算法设计思想及流程图银行储蓄系统1:开户2:销户3:查询4:退出1; 存款2:取款3:退出精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 6 页,共 18 页 - - - - - - - - - - 2 设计思路首先,我设计了两个类,一个是Account 类,旗下有 Saving(), Withdraw()和 ShouMe()3 个函数。另一个是 Bank 类,有开户函数 Append(),销户函数 Delete()和查询函数 Query()。开户函数运用了指针变量,首先设置了一个大小为100 的存储空间,运用指针比较方便。通过地址的变化,指向不同的值。每增加一个户,则accNum加 1. 存款函数,设置了Balance=Balance+number语句。取款函数,如果帐号余额不足,则给予提示并不予取款。最后执行Balance=Balance-number 。最后显示账户余额。销户函数,首先判断帐号是否存在。如果能获取ID 号,则此账户存在,就不要输出“此账户不存在”了。再把此帐号以后的账户都往前移一个,最后销户成功。查询函数,先判断账户是否存在,我在查询函数里又设置了存款、取款函数,可以进行存款、取款业务。在主函数中,设置一个Bank类,设置一个界面,有开户、销户、查询等业务。输入想要的业务,完毕后再返回主界面。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 7 页,共 18 页 - - - - - - - - - - 三、程序清单#include #include class Account /Account类 public: Account(); Account(int ID,char na30,double Balance); void Saving(); double Withdraw(); void ShowMe(); int getID(); private: int ID; char name30; double Balance; ; class Bank /Bank类 public: Bank(); void Append(); void Delete(); void Query(); private: Account *account100; int accNum; double Balance; ; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 8 页,共 18 页 - - - - - - - - - - Account:Account() Balance=0.0; Account:Account(int id,char na30,double Bal) ID=id; strcpy(name,na); Balance=Bal; void Account:Saving() /存款 int number; coutnumber; Balance=Balance+number; cout 现在您的账户余额为 :Balanceendl; double Account:Withdraw() /取款 int number; coutnumber; if(Balancenumber) cout对不起,您的账户余额不足number; Balance=Balance-number; cout 现在您的账户余额为 Balanceendl; return Balance; void Account:ShowMe() /显示信息 cout 账户ID:IDendl; cout名字:nameendl; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 9 页,共 18 页 - - - - - - - - - - cout 余额:Balanceendl; int Account:getID() /获取ID return ID; Bank:Bank() for(int i=0;i100;i+) accounti=NULL; accNum=0; void Bank:Append() /开户 int ID; char na30; coutID; coutna; Account *acc=new Account(ID,na,0); accountaccNum=acc; cout开户成功 !endl; cout 您的信息 :; cout账户ID:getID(); cout名字:na; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 10 页,共 18 页 - - - - - - - - - - accNum=accNum+1; void Bank:Delete() /销户 int ID; coutID; int j; int k=1,i=0; while(igetID() k=0; if(k) cout此帐号不存在 !endl; cout您的账户有余额,请先取出!Withdraw(); coutendl; for(j=i;jaccNum;j+) accountj=accountj+1; accNum-; cout销户成功 !endl; void Bank:Query() /查询 int ID; char yn; coutID; int k=1,i=0; while(igetID() k=0; else i+; if(k) cout此帐号不存在 !endl; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 11 页,共 18 页 - - - - - - - - - - cout是否继续 ?(Y/N)yn; accounti-ShowMe(); int choice=0; cout1:存款endl; cout2:取款endl; cout3:返回endl; coutchoice; switch(choice) case 1:accounti-Saving();break; case 2:accounti-Withdraw();break; case 3:break; void main() Bank bank; char yn; int choice=0; while (1) cout*欢迎来到银行系统 !*endl; cout *1:开户*endl; cout *2:销户*endl; cout *3:查询*endl; cout *4:退出*endl; coutchoice; switch(choice) case 1:bank.Append();break; case 2:bank.Delete();break; case 3:bank.Query();break; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 12 页,共 18 页 - - - - - - - - - - case 4:break; coutendl; coutyn; if (yn!=y) break; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 13 页,共 18 页 - - - - - - - - - - 四、程序调试与运行结果程序调试调试是整个程序编写过程中十分重要也是很困难的一部分,在这个过程中用了很多时间来进行程序的调试,在调试过程中遇到的相关问题如下:一语法错误 1.语句的最后忘记了加上“;”,“”等使程序发生错误。 2.把“ ”写反,以及“cout”中少一个o,等等比较简单的语法错误,很容易分辨出来。 3.函数的返回值问题。 4.break语句运用错误。二.逻辑错误文件的写入与读出,刚开始对文件的操作不太明白,以致不能很好的操作。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 14 页,共 18 页 - - - - - - - - - - 运行结果精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 15 页,共 18 页 - - - - - - - - - - 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 16 页,共 18 页 - - - - - - - - - - 五、设计心得(小结)这个程序虽然不大,但几乎用到了我们所学的所有知识。乍一看题目,感觉无从下手,通过查资料,慢慢地有所了解,便试着用所学的知识去写,刚弄完时,会弹出许多错误。做这个程序化了一个多星期的时间,主要是前期没做好准备工作。程序用到了很多不太熟悉的知识,比如指针操作,要用到指针变量,就要翻书。感觉不是太成功,程序不是很完善。但通过这次课程设计,让我了解了程序的一般编排,以及程序设计的一般思想,受益匪浅。由于是第一次做比较完整的程序,一开始会感觉无从下手。这次课程设计为以后的写程序打下一个基础。在做的过程中,我得到了老师和同学的帮助,才得以基本完成。设计中用到了很多的老师讲的东西。当我基本完成的时候,感到很高兴,看到了自己努力的成果。由于刚接触,没有较深的了解,所以我就上网查资料,去图书馆找有关的书来看。这让我又学习了很多知识。总之,这次课程设计,让我学到了很多东西。精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 17 页,共 18 页 - - - - - - - - - - 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 18 页,共 18 页 - - - - - - - - - -