| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1216 人关注过本帖
标题:关于一个简单地问题 模拟简单计算器
取消只看楼主 加入收藏
驿路梨花开
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2013-4-16
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:0 
关于一个简单地问题 模拟简单计算器
程序模拟简单运算器的工作:输入一个算式(没有空格),遇到‘=’号说明输入结束,输出结果。假设计算器只能进行加、减、乘、除运算,运算数和结果都是整数,4种运算符的优先级相同,按从左到右的顺序计算。例如,输入“1+2*10-10/2"后结果为10。

这是找来的代码
#include <stdio.h>
#include<conio.h>
void main()
{
   char ch,op=0;
   int a=0,b=0;
   do{
     ch=getche();
     if(ch>='0'&&ch<='9') a=a*10+ch-'0';这句话没有明白什么意思
     else
     {  switch(op)
        { case '+':  b+=a;break;
          case '-':  b-=a;break;
          case '*':  b*=a;break;
          case '/':  b/=a;break;
        }
       op=ch;
      
         b=a;
         a=0;这里的关系可能错了但是我是刚开始写搞不明白   
        
         
     }  
   }while(ch!='=');
   printf("%d\n",b);
}
不管输入什么结果最后输出都是最后输入的那个数比如1+1+3*5=输出5   1+2=输出2
各位大神求指导,谢谢
搜索更多相关主题的帖子: 计算器 include 优先级 
2013-04-16 11:21
快速回复:关于一个简单地问题 模拟简单计算器
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016470 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved