分享
分享赚钱 收藏 举报 版权申诉 / 2

类型最简单计算器部分代码.doc

  • 上传人:精品资料
  • 文档编号:10327708
  • 上传时间:2019-10-30
  • 格式:DOC
  • 页数:2
  • 大小:30.50KB
  • 配套讲稿:

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

    特殊限制:

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

    关 键  词:
    最简单计算器部分代码.doc
    资源描述:

    1、#include “stdafx.h“#include “stdio.h“#include “stdlib.h“#include “math.h“#define MAXSIZE 100#define END nchar opsMAXSIZE; /运算符栈int ops_top; /运算符栈顶标识double ovsMAXSIZE; /操作数栈int ovs_top; /操作数栈顶标识void push_ops(char x); /运算符进栈void push_ovs(double x); /操作数进栈char pop_ops(); /运算符出栈double pop_ovs();/操作数出栈ch

    2、ar gettop_ops(); /取出运算符栈顶元素double gettop_ovs(); /取出操作数栈顶元素void inistack_ops(); /初始化运算符栈void inistack_ovs(); /初始化操作数栈char Precede(char t1,char t2); /判断 t1 与 t2 的优先级别int char_In(char c); /判断 c 是否为运算符double Operate(double a,char theta,double b); /对出栈的两个数计算double EvaluateExpression( );/使用算符优先算法进行算术表示式求值

    3、/ops为运算符栈,ovs为操作数栈int main(int argc, char* argv)printf(“请输入算术表达式,以回车结束n“);printf(“%fn“,EvaluateExpression( );getchar();double EvaluateExpression( )/使用算符优先算法进行算术表示式求值/ops为运算符栈,ovs 为操作数栈double a,b,temp1,temp2,temp3;char stack_x,theta,input_c;inistack_ops(); /初始化运算符栈push_ops(END); /使结束符进栈inistack_ovs()

    4、; /初始化操作数栈input_c=getchar();stack_x=gettop_ops();while(input_c!=END|stack_x!=END) /判断计算是否结束if (char_In(input_c) /若输入的字符是 7 种运算符之一 switch (Precede(stack_x,input_c)case :theta=pop_ops();b=pop_ovs();a=pop_ovs();push_ovs(Operate(a,theta,b);break;else if(input_c=0push_ovs(input_c);input_c=getchar();elseprintf(“非法字符n“);exit(1);stack_x=gettop_ops();return(gettop_ovs();

    提示  道客多多所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:最简单计算器部分代码.doc
    链接地址:https://www.docduoduo.com/p-10327708.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    道客多多用户QQ群:832276834  微博官方号:道客多多官方   知乎号:道客多多

    Copyright© 2025 道客多多 docduoduo.com 网站版权所有世界地图

    经营许可证编号:粤ICP备2021046453号    营业执照商标

    1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png 9.png 10.png



    收起
    展开