zoukankan      html  css  js  c++  java
  • C语言下的简易计算器

     1 #include <stdio.h>
     2 #include <math.h>
     3 int main()
     4 {    
     5     double data1, data2;
     6     char op;
     7     while (3 == scanf("%lf%c%lf", &data1, &op, &data2) )
     8         { 
     9             double result;
    10             printf("%lf%c%lf=", data1,data2);
    11             switch (op)
    12             {
    13                 case '+':
    14                 result = data1 + data2;
    15                 break;
    16                 case '-':
    17                 result = data1 - data2;
    18                 break;    
    19                 case '*':
    20                 result = data1 * data2;
    21                 break;    
    22                 case '/':          
    23                 result = data1 / data2;
    24                 break;      
    25                 default:;
    26             }        
    27             printf("%lf
    ", result);    
    28         }    
    29 
    30     return 0;
    31 }

    ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓7.18更新↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

    说明:上面的代码在计算特定运算时会出现舍入错误,原因待定,修改代码如下解决。

     1 #include <stdio.h>
     2 int main()
     3 {    
     4     float data1, data2;
     5     char op;
     6     while (3 == scanf("%f%c%f", &data1, &op, &data2) )
     7         { 
     8             float result;
     9             printf("%f%c%f=", data1, op, data2);
    10 
    11             switch (op)
    12             {
    13                 case '+':
    14                 result = data1 + data2;
    15                 break;
    16                 case '-':
    17                 result = data1 - data2;
    18                 break;    
    19                 case '*':
    20                 result = data1 * data2;
    21                 break;    
    22                 case '/':          
    23                 result = data1 / data2;
    24                 break;      
    25                 default:;
    26             }        
    27             printf("%f
    ", result);    
    28         }    
    29 
    30     return 0;
    31 }
  • 相关阅读:
    里氏替换原则
    开闭原则
    Java Swing 介绍
    redis发布订阅模式
    Spring Cloud Bus消息总线+rabbitmq+Gradle(Greenwich.RELEASE版本)
    文档对象模型(DOM)系列三:处理元素属性
    文档对象模型(DOM)系列二:在DOM元素间移动
    文档对象模型(DOM)系列一:DOM基础
    深入理解javascript中的this 关键字(转载)
    javascript中的函数
  • 原文地址:https://www.cnblogs.com/RhinoC/p/3799218.html
Copyright © 2011-2022 走看看