设为首页 加入收藏

TOP

后序式运算代码实例
2017-11-19 09:06:52 】 浏览:185
Tags:后序式 运算 代码 实例

C代码(理论可参考中序式转后序)

#define _CRT_SECURE_NO_WARNINGS
#include
  
   
#include
   
     void jisuan(char *); float cal(float, float, char); void main() { char input[80]; printf("中序式:"); scanf("%s", input); jisuan(input); system("pause"); } void jisuan(char *arr) { float stack[80] = { 0.0 }; int top = 0; int i = 0; char op; char temp[2]; while (1) { op = arr[i]; switch (op) { case '\0': printf("%f\n", stack[top]); return; case '+': case '-': case '*': case '/': stack[top - 1] = cal(stack[top],stack[top - 1],op); top--; break; default: if (top < sizeof(stack) / sizeof(float)) { temp[0] = op; top++; stack[top] = atof(temp); //字符转float } break; } i++; } } float cal(float A, float B, char op) { if (op == '+') { return A + B; } if (op == '-') { return A - B; } if (op == '*') { return A*B; } if (op == '/') { return A / B; } }
   
  
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇基础语法C语言:HelloWorld程序 下一篇C语言编程实现之一个数组中只有两..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目