当前位置: 代码迷 >> C语言 >> 怎样编写混合运算计算器啊
  详细解决方案

怎样编写混合运算计算器啊

热度:194   发布时间:2008-03-02 12:19:13.0
怎样编写混合运算计算器啊
我编写的的二则计算器为什么只能进行一种运算啊?
各位大侠帮帮忙
#include <stdio.h>
main()
{
        int o,x,y,m;
        while(1)
        {
        scanf("%d%d%d",&o,&x,&y);
        while ("&o"=="1");
        m=x+y;
        printf("%d+%d=%d\n",x,y,m);
        getchar();
        getchar();
        }
        while(2)
        {
        scanf("%d%d%d",&o,&x,&y);
        while ("&o"=="2");
        m=x-y;
        printf("&d-&d=%d\n",&x,&y,&m);
        getchar();
        getchar();
        }
}
搜索更多相关的解决方案: 计算器  getchar  运算  编写  printf  

----------------解决方案--------------------------------------------------------
米人帮我啊[bc02]
----------------解决方案--------------------------------------------------------
哇```我看到了一个菜鸟```

while ("&o"=="1");  ------   很容易形成死循环``
这句我不懂????  双引号是什么意思``字符串??  字符串可以直接这样比较??


while(1)
{....}    ------------这个循环是永远不回结束的`````

while(2)
{....}    ------------永远不回运行```


还有````

while ("&o"=="1");
        m=x+y;
        printf("%d+%d=%d\n",x,y,m);

这3句有应该逻辑错误```虽然IDE不抱错``但是应该不回是你的意思``


你的程序永远进如死循环```
----------------解决方案--------------------------------------------------------
呵呵,斑竹.......这样说话太不那个点了啊.......
----------------解决方案--------------------------------------------------------
哦......
我没告诉你我不是菜鸟啊

那请教一下应该怎样编写呢?
----------------解决方案--------------------------------------------------------
我说话怎么了``你是说我说的第一句话````菜鸟又怎么``我还随便是一个菜鸟``
----------------解决方案--------------------------------------------------------
大家都是玩笑话说说而已,不以为真
----------------解决方案--------------------------------------------------------
随便说说啊.只是怕以后没人问题目,没题目做...别生气....
----------------解决方案--------------------------------------------------------
DEV-CPP4.9.9.2 通过

#include <stdio.h>
#define  OUT( op , res )  printf ("num1 " #op " num2" " = %lf ", res)
#define  NL putchar('\n')
int main(void)
{
        char operation ;  /*  运算符 * /
        double num1, num2 ;  /*  第一和第二个数 */
        /*  输入 第一个数 空格 运算符号 空格 第二个数,  新的一行CTRL+Z推出程序 */
        while( scanf ("%lf %c %lf", &num1, &operation, &num2 ) != EOF )   
        {
             while( getchar() != '\n') ; /*  清空缓冲   */
            
             switch ( operation )  /*  下面是4种情况  */
             {
                    case '+' : OUT(  + , num1 + num2 ) , NL, NL ; break ;
                    
                    case '-' : OUT(  - , num1 - num2 ) , NL, NL ; break ;
                    
                    case '*' : OUT(  * , num1 * num2 ) , NL, NL ; break ;                  
                    
                    case '/' : OUT(  / , num1 / num2 ) , NL, NL ; break ;
                    
                    default  : break ;
             }
            
        }
      
        return 0 ;
}

[[it] 本帖最后由 死了都要C 于 2008-3-2 11:32 编辑 [/it]]
----------------解决方案--------------------------------------------------------
只支持4种基本运算  数据大小为 DOUBLE
----------------解决方案--------------------------------------------------------
  相关解决方案