ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:164.74KB ,
资源ID:5272781      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5272781.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(面向对象程序设计课程设计报告如何购买到最多的巧克力.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

面向对象程序设计课程设计报告如何购买到最多的巧克力.docx

1、面向对象程序设计课程设计报告如何购买到最多的巧克力购买到最多的巧克力一 目的利用所学知识,编写出可以解决从自动售货机出购买巧克力时,已知1美元可以购得一块巧克力。如果我们有n美元,且设置m张优惠券可以兑换一块巧克力,那么最多能够得到多少块巧克力,其中包括优惠券换到的巧克力,以及还有多少张富余的优惠券这一问题,最后将从键盘上键入的内容和输出数据保存到outfile.txt文件夹中。通过这次课程设计,加深对C语言程序设计课程所学知识的理解,熟练掌握和巩固C语言的基本知识和语法规范,学会编制结构清晰、编程风格良好、数据结构适当的C语言程序,从而具备利用计算机编程分析解决综合性实际问题的初步能力。二

2、需求分析1、输入数据(1)输入您所拥有的美元金额n;(2)能够兑换一块巧克力的的优惠券张数m。2、输出数据(1)输出最后得到的巧克力块数(2)富余优惠券的数量3、程序所达到的功能从自动售货机处购买巧克力时,已知1美元可以购得一块巧克力。如果我们有n美元,且设置m张优惠券可以兑换一块巧克力,那么一共能够吃到多少块巧克力,包括优惠券兑换到的巧克力,以及还有多少张富余的优惠券,并且将输出数据保存到outfile.txt文件中。三 概要设计1、程序核心所解决的问题(1)兑换后富余优惠券数=兑换巧克力剩余的优惠券数+兑换得到巧克力所带来的优惠券(2)最多拥有的巧克力数=美元购买的巧克力数+优惠券兑换到巧

3、克力的总数2、各成员函数的功能、各数据成员的含义(1)main函数;void main() int m,n,a2; char c=0; ofstream outfile;outfile.open(myfile.txt); while(c!=#)coutn; coutm; a0=0; a1=n;(定义兑换之后剩余的优惠券数a0,最多拥有的巧克力数a1)用于最终输出程序结果(2)Fun函数;int fun(int m,int n,int a,int s) if(nm) a0=n; else a1+=n/m; n=n/m+n%m; return fun(m,n,a,2); (定义整型美元金额n,能够

4、兑换一块巧克力的的优惠券张数m,定义数组a,定义形参s)用于判断拥有的美元金额数n是否小于所设定的m张优惠券兑换一块巧克力的数目:如果小于则输出兑换后剩余的优惠券数为n,最多拥有的巧克力数为n;如果拥有的美元金额数n大于所设定的m张优惠券兑换一块巧克力的数目,则所拥有的巧克力数=a1+n/m,n=n/m+n%m,接着返回Fun函数(3)#include 文件流类;ofstream outfile;outfile.open(myfile.txt)outfile兑换之后剩余的优惠券数为a0endl最多拥有的巧克力数为a1endl; outfile.close();将从键盘上入的内容和输出数据保存到

5、myfie.txt文件中。四 详细设计1、伪代码int fun(int m,int n,int a,int s) /定义函数fun,定义整型美元金额n,能够兑换一块巧克力的的优惠券张数m,定义数组a,定义形参s if(nm) /如果拥有的美元金额n数小于所设定的m张优惠券兑换一块巧克力的数目 则输出兑换后剩余的优惠券数为n else /如果拥有的美元金额数n大于所设定的m张优惠券兑换一块巧克力的数目 a1+=n/m; /则所拥有的巧克力数=a1+n/m n=n/m+n%m; return fun(m,n,a,2); /返回函数fun void main() int m,n,a2; /定义兑换之

6、后剩余的优惠券数a0,最多拥有的巧克力数a1 char c=0; ofstream outfile;outfile.open(myfile.txt); /输出到文件myfile.txtwhile(c!=#)cout请输入金额:; 输入拥有的美元金额n 输入可以用多少优惠券兑换一块巧克力:;输入所设定的几张优惠券能够兑换巧克力的数目m a0=0; a1=n; fun(m,n,a,2); 输出兑换之后剩余的优惠券数为a0endl最多拥有的巧克力数为a1endl; outfile兑换之后剩余的优惠券数为a0endl最多拥有的巧克力数为a1endl; c=getchar(); c=getchar();

7、 outfile.close(); 2、流程图五 调试分析1、调试过程中出现的问题在visculC+6.0环境下调试,调试过程中发现第一次所编写的程序虽然在结构算法方面没有什么大的问题但是只能够循环一次,如果输入的所拥有美元金额n与设置的m张优惠券兑换一块巧克力数相差较大那么输出结果就是错误的。如下图:从中明显可看出输出结果不正确,如果2张优惠券就可以兑换 一块巧克力那么最后富余的优惠券数绝对是小于2的。并且在第一次检查程序时没有将最后的输出结果保存到outfile.txt文件中。2、解决方案为了能够得到正确的输出结果,首要的就是解决程序只能够循环一次的问题。于是通过询问同学并再次翻阅课本有关

8、章节后,我认为应该在程序中添加了一个循环,通过几次修改调试后程序得以运行成功。通过查阅网上资料在程序中添加了头文件及相应代码使得程序最后从键盘上接受到的数据以及运行得到的结果可以输出保存在outfile.txt文件中。六 测试结果1、测试计划输入一系列可行的所拥有的美元金额n与能兑换一块巧克力所需的优惠券张数m的值检测输出结果是否正确。2、测试数据拥有的美元金额n兑换一块巧克力的优惠券张数兑换后富余的优惠券数最多拥有的巧克力数110211922072233255131434644055553686664387七 用户使用说明1、操作步骤打开qkl文件夹点击里面第二个文件qkl。打开后点击保存并

9、进行调试。界面出现“请输入您拥有的美元金额:”从键盘上输入您所拥有的美元金额数n。按回车。界面出现“请输入可以用多少优惠券兑换一块巧克力:”从键盘上输入您需要的多少张优惠券兑换一块巧克力的数目m。 按回车。界面出现运算结果。按回车。界面又出现“请输入您拥有的美元金额:”从键盘上输入您所拥有的美元金额数n。.以此往复便可求得一系列从自动售货机处购买巧克力时,已知1美元可以购得一块巧克力。如果我们有n美元,且设置m张优惠券可以兑换一块巧克力,那么最多能得到多少块巧克力,包括第一次用美元购买的巧克力和之后用优惠券兑换的巧克力及富余优惠券的张数。2、查看结果若想在文件中查看从键盘上键入的一系列m、n的

10、值只需打开qkl文件夹中myfile.txt便可查到。如下图:八 课程设计总结课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程.”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础. 通过这次课程设计,不仅暴露了我在学习中的一些不足也使我在多方面都有所提高。同时各科相关的课程都有了全面的复习,独立思考的

11、能力也有了提高。 在这次设计过程中,锻炼了自己单独设计以及综合运用知识的能力,体会了学以致用、突出自己劳动成果的喜悦心情,从中发现自己平时学习的不足和薄弱环节,从而加以弥补。同时感谢对我帮助过的同学们,谢谢你们对我的帮助和支持,让我感受到同学的友谊。 由于本人的设计能力有限,在设计过程中难免出现错误,恳请老师们多多指教,我十分乐意接受你们的批评与指正。在实际的上机操作过程中,不仅是让我们了解数据结构的理论知识,更重要的是培养解决实际问题的能力, 所以相信通过此次实习可以提高我们分析设计 能力和编程能力,为后续课程的学习及实践打下良好的基础。 在这次短短的课程实践里,对“学无止境”这句话,理解更深了,只有不断的学习,才会发现问题,才会引起思考,没有问题才是最大的问题。同时,一定要踏实,将问题落到实处,不要拖延,不懂就虚心请教他人,学会合作。本次课程设计,我深刻的认识到要做好一件事,必须要认真的对待,一直都相信那句话“不是你做不好,是你花的心思太少” ,有些事,你可以选择把它做好,一定要踏实认真切勿敷衍!每件事都一样,没有捷径可走,必须要自己动手, 自己努力,是问题总有解决的办法,就看你够不够认真。尤其是像对于课程编程这类问题,更需要有一个好的态度和足够的耐心。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1