问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

请问怎么用c语言写一个可以实现加减乘除四则运算的计算器!

发布网友 发布时间:2022-04-30 19:35

我来回答

1个回答

热心网友 时间:2022-04-24 04:20

#include<stdio.h>

void
js(float *i,int j,char c)
{
    float m;
    scanf("%f",&m);
    if(c=='*')
    i[j]=i[j]*m;
    else
    i[j]=i[j]/m;
}

void js2(float *i, char *c, int j, int k)
{
    int l = 0;
    for (int o=0; o<=k; o++)
    {
        if (c[o] == '+')
            i[l+1] = i[l] + i[l+1];
        else
            i[l+1] = i[l] - i[l+1];
        l++;
    }
}

int
main(void)
{
    int ic=0,j=0,k=0;
    float i[100];
    char c[100];
    while(1)
    {
        if(ic==0)
        {
            scanf("%f",&i[j++]);
            ic=1;
        }
        if(ic=1)
        {
            c[k++]=getchar();
            if(c[k-1]=='*'||c[k-1]=='/')
            {
                js(i,j-1,c[k-1]);
                k--;
                continue ;
            }
            else if(c[k-1]=='\n')
            break;
            ic=0;
        }
    }
    js2(i,c,j-1,k-2);
    printf("%f", i[j-1]);
    return 0;
}

算法流程:

1,如果读入数字就把它存入数组中,

2,如果读入加,减号就存如另一个数组用,如果读入乘 除号,就再读入一个数字,从存数字的数组拿出两个数字进行乘 除运算。把结果存入数组中,这么重复直到读入回车键的符号。

3,读到回车符号后,就从存符号的数组中拿出一个符号,再从存数字的数组中拿出两个数字进行相应计算,接着再拿出一个数字一个符号和之前计算结果进行相应计算,一直重复,直到所有符号都拿出来了。

4,剩下的最后一个数字就是计算结果。


注:这个是我是我很久之前回答别人的,地址是https://zhidao.baidu.com/question/454652508527253645

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
门?049期父母欲其改娶五字金口决,开是什么特号生肖 支付宝怎么把银行卡的钱转到余额里呢? 下载wampserver5,安装并启动后不能启用apache、mysql的功能,请问这是怎... wampserver安装多个版本phpmysqlapache 四季豆有哪些吃法值得推荐? 四季豆牛肉馅饼的家常做法是什么? 香煎四季豆豆腐饼怎么做好吃 腾讯会议没声音怎么修复-腾讯会议没有声音修复办法 西安市高新区所有幼儿园 西安高新第二初级中学学区有哪些小区 C语言作业,编写一个简单的计算器,实现加减乘除运算,谢谢大家 C语言 编译计算器可以分别计算加减乘除 c语言计算器加减乘除 怎样用C语言编写计算器的加减乘除 体重大的人,有什么好的徒手锻炼背部肌肉的方法? 在早上喜欢喝牛奶吃燕麦粥,这样的早餐营养充足吗? 牛奶加面包作为早餐,这种早餐会不会对胃造成伤害? 轮式挖掘机上路需要行驶证吗 请问现代130轮式挖掘机个种指士灯指的是什么? 现代130轮式挖掘机尾灯总成多少钱 130型号的挖掘机怎么启动 现代130-5轮式挖掘机二档没有了,怎么解决 山河智能SWE130W轮式挖掘机怎么样啊? 山河智能130和现代150的轮挖在质量、操作和油耗上有什么明显的不同 家里有糯米,可以做哪些菜? 糯米可以做几种食物? 按月等额本息还款法每年每月还款金额一样吗 等额本息每个月的利息是一样的吗 等额本息还款,每期还款金额固定,但每期的本金和利息是不断变化的,具体构成是怎么算出来的? 冰镇糖水菠萝怎么做好吃 买房贷款,等额本息还法,一年是不是还款的利息都一样 用c语言编一个计算器程序,能够实现基本的加减乘除,能够输出运算对象,运算符,运算结果。谢谢啦! 用c语言实现科学计算器要求有计算器界面 可以加减乘除平方开方 用C语言设计一个计算器,处理简单的加减乘除,最后用goto返回执行下一个计算。 用c语言设置计算器,能运行加减乘除。而且运行的时候不能有任何错误 苏州市民卡B卡有哪些用途,在哪些地方可以充值 用C语言编写一个简易计算器可实现加减乘除,连加连减,连乖连除。 用c语言编一个简单的加减乘除的计算器程序 不需要很复杂 只要能进行两个数之间的运算就好了 请问苏州公交卡在哪些地方可以充值,谢谢。 计算器的C语言代码.就进行简单的加减乘除的运算,可以循环的,谢谢大神了! 想知道: 苏州市苏州吴中区一卡通充值地点在哪? C语言 简单的计算器 只需要进行 加减乘除的运算 谢谢大神!!! 苏州市民卡坐公交的话,如果直接往苏州银行卡里转钱可以用吗? 苏州社保卡上是江苏银行,是不是在江苏银行充钱就能坐公交车啊? 苏州市民卡(来苏州上学学校发的),是不是需要激活才能当公交卡用? 刚发的苏州市民卡 是不是充值好就可以做公交车 有机玻璃溶化剂与固化剂是什么? 水玻璃(又名硅酸钠),而可作为水玻璃固化剂的,究竟有多少种呢? 您的手机已被锁定 ,请你输入手机防盗密码解锁 。这怎么办啊 有哪位了解水玻璃固化剂的作用的吗 水玻璃加磷酸能堵漏吗