欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    c++课程设计实验报告 分数计算器.docx

    • 资源ID:3060470       资源大小:39.14KB        全文页数:7页
    • 资源格式: DOCX        下载积分:6.99金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要6.99金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    c++课程设计实验报告 分数计算器.docx

    c+课程设计实验报告 分数计算器C+设计报告 分数计算器 指导老师: 学院: 学号: 姓名: 课程题目:分数计算器 设计要求:有详细的菜单选项界面,用户不选择退出就可以反复运算。 完善程序,改为多个操作数基本四则运算,运到0为止。 增加函数,完成四则混合运算,注意算法要考虑运算符的优先 对应增加主菜单选项 。 添加语句,使四则运算具有测试功能,计算机能够自动出题,并要求用户计算,同时打分,十题为一个单元,每题一个运算符,参与运算的分子或分母为一位数,运算符包括加,减,乘,除,及大于,小于等逻辑运算。 设计思想:1)类的封装性;2)main函数结构修改;3)goto语句解决四则混合运算;4)随机数函数使用解决测试程序的编写。 原程序简介:1):具有对两分数的简单四则运算和比较;:分数与整书的简单四则运算;:将两分数分别以正数与真分数的格式输出。 2)原程序主要包含完善的分数类,各重载的运算符函数,一个全局函数int GCF(int x,int y); 对原程序的修改:1)增加 void calcmixed /四则混合运算 fraction f1,f2,sum; char op1,op; int t=1,k; op1=' ' while(t=1) cout<<"输入四则混合运算的计算式:" cin>>f1>>op; f1.simplify; while(op!='=') cin>>f2; f2.simplify; switch(op) case'+': case'-': switch(op1) case' ': sum=f1; break; case'+': sum=sum+f1; break; case'-': sum=sum-f1; break; op1=op; f1=f2; break; case'*': f1=f1*f2; break; case'/': if(f2!=0) f1=f1/f2; break; else cout<<"除数为0n" goto end; default: cout<<"非法的运算符n" goto end; cin>>op; switch(op1) case' ': sum=f1; break; case'+': sum=sum+f1; break; case'-': sum=sum-f1; break; cout<<"="<<sum<<'n' cout<<"若果您想继续请输入1,否则请输入0n" cin>>k; t=k; l:if(t=0) menu; else cout<<"输入错误,请重输!n" cin>>t; goto l; end:; menu; 思路:首先读入第一个操作数与第一个运算符,然后读入后一个操作数及接着的运算符和一个操作数;当第一个运算符是加或减运算符时,判断后一个运算符是加减运算符还是乘或除运算符。若是加减运算符,则要完成前一个加或减运算,并把当前的加或减运算符作为前一个运算符;若是乘或除运算符,则先完成乘或除运算。若第一个运算符是乘或除运算符,不管后一个运算符是什么运算符,就可立即完成乘或除运算。后面重复读入一个运算符和接着的操作数,并重复以上处理,知道读到=为止。这时,要看是否保存了一个加或减运算符,若保存了,则要完成最后的加或减运算。最后输出运算结果。 2)void test;用随机数的知识实现让计算机自动出题,设置了四个单元,每单元十题,且能显示用户最后的得分。 void test /测试功能函数 int i,j,k,op,op1,op2,sum=0,t=1; int a,b,c,d; fraction f1,f2,f3,f4; m:a=rand%10; b=rand%10; c=rand%10; d=rand%10; if(b!=0&&d!=0) f1.setnum(a); f1.setden(b); f2.setnum(c); f2.setden(d); else goto m; f1.simplify; f2.simplify; cout<<"=测试=n" cout<<"每单元有十题,每题十分,答对加分,答错不扣分,在指定位置输入您的答案n" cout<<"*n" for(i=1;i+) cout<<"第"<<i<<"单元n" for(j=1;j<=10;j+) cout<<"j:" op=rand%2; switch(op) case 0: op1=rand%4; switch(op1) case 0: cout<<f1<<"+"<<f2<<"=" f3=f1+f2; break; case 1: cout<<f1<<"-"<<f2<<"=" f3=f1-f2; break; case 2: cout<<f1<<"*"<<f2<<"=" f3=f1*f2; break; case 3: cout<<f1<<"/"<<f2<<"=" f3=f1/f2; break; case 1: op2=rand%6; switch(op2) case 0 :cout<<f1<<"="<<f2<<":"<<'n' f3.setnum(f1=f2); f3.setden(1); break; case 1:cout<<f1<<"!="<<f2<<":"<<'n' f3.setnum(f1!=f2); f3.setden(1); break; case 2:cout<<f1<<">="<<f2<<":"<<'n' f3.setnum(f1>=f2); f3.setden(1); break; case 3:cout<<f1<<"<="<<f2<<":"<<'n' f3.setnum(f1<=f2); f3.setden(1); break; case 4:cout<<f1<<">"<<f2<<":"<<'n' f3.setnum(f1>f2); f3.setden(1); break; case 5:cout<<f1<<"<"<<f2<<":"<<'n' f3.setnum(f1<f2); f3.setden(1); break; cout<<"请输入您的答案:" cin>>f4; if(f4=f3) cout<<"正确!n" sum=sum+10; else cout<<"错误!n" cout<<"本单元您总共答对:"<<sum/10<<"题,"<<'t'<<"得分:"<<sum<<'n' cout<<"若您想继续进行本项测试请输1,若不想则输入0n" cout<<"请输入您的选择:" cin>>t; n: switch(t) case 0: menu; case 1: ; break; default: cout<<"输入错误,请重输!n" cin>>t; goto n; 3)void exit;用于退出程序。 4)void badinput;提醒用户输入错误。 2)修改:(1)将int main( ); 改成void main( );函数体也作了较大改动。 (2)在新增的函数中作出修改使得用户能不选择退出就能反复运算,例如: cout<<"若您想继续进行本项测试请输1,若不想则输入0n" cout<<"请输入您的选择:" cin>>t; n: switch(t) case 0: menu; case 1: ; break; default: cout<<"输入错误,请重输!n" cin>>t; goto n; cout<<"Press any key to continuen" getch; menu; 遇到的主要问题:对原程序代码的理解,对运算符重载部分知识的陌生给开始的准备工作带来障碍,但通过对书本的复习,反复的研读,与同学们的商讨基本解决该问题。 (2)四则混合运算算法较困难,经书本提示借阅相关参文献解决该问题。 在编写测试程序是忽略该程序要面向用户,必须有详细的指示 使得用户了解程序的用法,经过与同学的交流后改正了。 在此次编写实践过程中,得到了老师的指导和同学们的帮助,通过翻阅书籍,文献, 资料我不仅复习到原有知识,还学到新的内容,例如goto语句,菜单的设计等。在与老师和同学们的交流中学到新知识和方法,这也是很关键的一点。虽然过程当中遇到不少难题,但在解决问题和学到知识的过程中还是很有成就感的。

    注意事项

    本文(c++课程设计实验报告 分数计算器.docx)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开