读入一个只包含 +, -, *, / 的非负整数计算表达式,计算该表达式的值。
2013-10-30 00:00
1076 查看
#include <stdio.h> #include <string.h> #define MAX 200 double stack[MAX]; int tail; int main() { int a; while (scanf("%d ",&a) && a!=0) { tail = 0; //a!=0,保存在数组中 //i 始终指向数字位置 stack[++tail] = 1.0 * a; //入栈其他剩余的数字 char symbol,space; double num; while (scanf("%c %lf%c",&symbol,&num,&space)!=EOF) { if (symbol == '+') { stack[++tail] = num;//1.0 * num; } else if (symbol == '-') { stack[++tail] = -1 * num;//-1.0 * num; } else if (symbol == '*') { stack[tail] = stack[tail] * num; } else if (symbol == '/') { stack[tail] = stack[tail] / num; } if(space != ' ') { break; } } //统计数组中的数值的和 double count = 0; int i; for (i=1;i<=tail;i++) { count += stack[i]; } printf("%.2lf\n",count); } return 1; }
相关文章推荐
- 输入一个只包含个位数字的简单四则表达式字符串,计算该表达式的值
- 读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10100。 输出格式:在一行内输出n的各位数字之和
- 读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10100。 源程序
- 输入一个只包含个位数字的简单四则运算表达式字符串,计算该表达式的值
- 3、定义一个结构体变量(包含年月日),计算该日在本年中为第几天?要求写一个days函数。参数是此结构体类型的变量,返回值是整数。
- 如何计算 一个音视频文件 (.ts)文件 (包含pcr信息). 播放所使用的带宽
- 如何计算 一个音视频文件 (.ts)文件 (包含pcr信息). 播放所使用的带宽
- git是一种分布式代码管理工具,git通过树的形式记录文件的更改历史,比如: base'<--base<--A<--A' ^ | --- B<--B' 小米工程师常常需要寻找两个分支最近的分割点,即base.假设git 树是多叉树,请实现一个算法,计算git树上任意两点的最近分割点。 (假设git树节点数为n,用邻接矩阵的形式表示git树:字符串数组matrix包含n个字符串,每个字符串由字符'0
- 华为机试:计算一个表达式的值
- 用c语言实现输入一个十进制数,计算其转换为二进制数后其中包含1的个数
- 给出两个表示两个非负整数的非空链表。数字以相反的顺序存储,它们的每个节点都包含一个数字。添加两个数字,并将其作为链接列表返回。
- 我就给一个PHP逆波兰表达式的算法吧---工资计算专用
- 至少10位数,至少包含一个大写字母,至少一个小写字母,至少一个数字,(:;=*@)特殊字符中的一个正则表达式
- 【Java】一个小程序,计算它包含的代码所需的耗时
- 数据结构::如何计算后缀表达式--栈的一个小应用
- 简化版定义一个结构体变量(包含年月日),计算该日在本年中为第几天?要求写一个days函数。参数是此结构体类型的变量,返回值是整数
- 数据库设计系列【6】当一个实体包含多个计算列时,如何处理?
- 一个基于LL(1)的简易C++四则表达式计算
- 尽管是一个CS专业的学生,小B的数学基础很好并对数值计算有着特别的兴趣,喜欢用计算机程序来解决数学问题。现在,她正在玩一个数值变换的游戏。她发现计算机中经常用不同的进制表示同一个数,如十进制数123表达为16进制时只包含两位数7、11(B),用八进制表示时为三位数1、7、3。按不同进制表达时,各个位数的和也不同,如上述例子中十六进制和八进制中各位数的和分别是18和11。
- 利用栈的原理计算一个表达式的值