帮我下~!!!!,C语言-编程 !!!答案写下 5

一个简单的计算器【问题描述】设计一个简单的计算器,其输入为一次性将所有的计算命令输入,先计算的后输入。首行告诉总共有多少个运算符参加运算,所有的输入及输出都为整数。操作有... 一个简单的计算器

【问题描述】
设计一个简单的计算器,其输入为一次性将所有的计算命令输入,先计算的后输入。
首行告诉总共有多少个运算符参加运算,所有的输入及输出都为整数。
操作有只有Add Sub Mul即加法、减法、乘法三种。
【输入形式】
首行:总的操作数
其余各行:操作种类、操作数
【输出形式】
输出结果
【样例输入】
4
Add 1
Sub 2
Mul 4
Sub 4 5
【样例输出】
3
【样例说明】
计算表达式为(5-4)*4-2+1
展开
 我来答
水上漂汤
2014-11-30 · TA获得超过1万个赞
知道大有可为答主
回答量:1830
采纳率:71%
帮助的人:1429万
展开全部
#include <stdio.h>
#include <stdlib.h>

int main()
{
    int n, i;
    scanf("%d", &n);
    char (*oper)[4] = (char (*)[4])malloc(n*sizeof(char*));//操作符(operator)数组
    int *op = (int*)malloc((n + 1)*sizeof(int));//操作数(operand)数组
    for (i = 0; i < n; ++i)
        scanf("%s %d", oper[i], &op[i]);
    scanf("%d", &op[n]);

    for (i = n; i > 0; --i)
    {
        switch (oper[i-1][0])
        {
        case 'A':
            op[i-1] = op[i] + op[i-1];
            break;
        case 'S':
            op[i-1] = op[i] - op[i-1];
            break;
        case 'M':
            op[i-1] = op[i]*op[i-1];
            break;
        }
    }
    printf("%d\n", op[0]);

    return 0;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式