第一范文网 - 专业文章范例文档资料分享平台

C++ 计算器 课程设计模板资料

来源:用户分享 时间:2025/8/26 9:36:06 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

C++面向对象程序设计

} oper.pop(); continue; }

if (c=='=') //遇到‘=’号,输出结果; {

if (pr) {cout<<\括号数目不匹配,请检查并重新输入!\ if (used) num.push(t);

while(!oper.empty()) tozhan(num,oper); cout<<\表达式的值为: \ return; }

else {cout<<\表达式输入错误,请重新输入!\ } }

bool judge(char s,char t) {

if ((s=='*'||s=='/')&&(t=='+'||t=='-')) return true; if (s=='.') return true;

10

C++面向对象程序设计

return false; }

void tozhan(stack& num,stack& oper) { float a,b,r;

b=num.top();num.pop(); a=num.top();num.pop(); switch( oper.top() ) {

case ('+'):r= a+b;break; case ('-'):r= a-b;break; case ('*'):r= a*b;break; case ('/'):r= a/b;break; case ('.'):r=fraction(a,b); };

num.push(r); oper.pop(); }

float fraction(float m, float n) //处理小数 {

11

C++面向对象程序设计

while (n>=1) n/=10; n+=m; return n; }

4.2运行结果

12

C++面向对象程序设计

13

C++面向对象程序设计

14

C++面向对象程序设计

结 论

本程序基本完成了题目要求的功能。此计算器有运算的能力。但是功能单一,每次只能进行一次运算,而不能重复操作,并且对于数据的N次平方的操作需要进行多次数据与“*”的多次重复输入,比较复杂,在时空方面占据劣势。

本软件应用起来不是很方便,特别是输入的一些字符的时候,必须是英文半角,不然会提示语法错误,最不实际的就是不能运用求值。但是可以通过增加判断条件,使之对输入形式不拘一格.

这次课程设计,我更加深刻地认识到了C语言,栈,C++面向对象编程三者之间的区别和联系,同时也体会到了三者联合的优势,清楚的认识到基础的重要性。甚至连复杂的程式都可以用简单的算法表现出来,或许这就是程序由繁入简的最终奥义吧。

对于这次设计,也发现了自己这程序方面还是很不行,但是这次课程设计让我感受到了学习的过程才是最重要的,更加欣喜的是也让我获得短暂的成就感和充实感。

参 考 文 献

1 谭浩强著. C++面向对象程序设计. 北京:清华大学出版社,2010 2 谭浩强著. C程序设计(第三版). 北京:清华大学出版社,2008

3 严蔚敏著. 数据结构(C语言版). 北京:清华大学出版社,2008

15

搜索更多关于: C++ 计算器 课程设计模板资料 的文档
C++ 计算器 课程设计模板资料.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c38rs92wglq4vbt01gdv99bpag891bi0044f_3.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top