zoukankan      html  css  js  c++  java
  • 简单算数表达式求值

    今天看到了这样的一道关于函数的特别特别简单的题

    两位正整数的简单算术运算(只考虑整数运算),算术运算为: +,加法运算; -,减法运算; *,乘法运算; /,整除运算; %,取余运算

    算术表达式的格式为(运算符前后可能有空格): 运算数 运算符 运算数

    请输出相应的结果

    输入:一行算术表达式

    输出:整型算数运算的结果(结果值不一定为2位数,可能多于2位或少于2位)

    样例输入: 32+64

    样例输出: 96

    好吧,现在估计看到这里的人已经不多了。确实,这是一道非常简单的题,但是这道题里却藏着一个巨大的坑,那就是:

    (运算符前后可能有空格)

    。。。

    由于字符可以读入空格,因此在scanf输入时%d%c%d中间应用空格隔开

    很好很好。。。

    最后希望读者注意这个坑点,减少细节上的错误

    附加本题代码(写的不好,勿喷)

     1 #include<cstdio>
     2 using namespace std;
     3 void jiafa(int x,int y)
     4 {
     5     printf("%d",x+y);
     6 }
     7 void jianfa(int x,int y)
     8 {
     9     printf("%d",x-y);
    10 }
    11 void chengfa(int x,int y)
    12 {
    13     printf("%d",x*y);
    14 }
    15 void chufa(int x,int y)
    16 {
    17     printf("%d",x/y);
    18 }
    19 void quyu(int x,int y)
    20 {
    21     printf("%d",x%y);
    22 }
    23 int main()
    24 {
    25     int a,c;
    26     char b;
    27     scanf("%d %c %d",&a,&b,&c);
    28     if(b=='+')
    29     {
    30         jiafa(a,c);
    31     }
    32     else if(b=='-')
    33     {
    34         jianfa(a,c);
    35     }
    36     else if(b=='*')
    37     {
    38         chengfa(a,c);
    39     }
    40     else if(b=='/')
    41     {
    42         chufa(a,c);
    43     }
    44     else if(b=='%')
    45     {
    46         quyu(a,c);
    47     }
    48     return 0;
    49 }
  • 相关阅读:
    SQLMAP注入教程-11种常见SQLMAP使用方法详解
    VS2012/2013/2015/Visual Studio 2017 关闭单击文件进行预览的功能
    解决 IIS 反向代理ARR URLREWRITE 设置后,不能跨域跳转 return Redirect 问题
    Spring Data JPA one to one 共享主键关联
    JHipster 问题集中
    Spring Data JPA 定义超类
    Spring Data JPA查询关联数据
    maven命名
    maven仓库
    Jackson读取列表
  • 原文地址:https://www.cnblogs.com/yufenglin/p/9971535.html
Copyright © 2011-2022 走看看