zoukankan      html  css  js  c++  java
  • Openjudge-计算概论(A)-简单算术表达式求值

    描述:

    两位正整数的简单算术运算(只考虑整数运算),算术运算为:

    +,加法运算;
    -,减法运算;
    *,乘法运算;
    /,整除运算;
    %,取余运算。

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

    请输出相应的结果。

    输入一行算术表达式。输出整型算数运算的结果(结果值不一定为2位数,可能多于2位或少于2位)。

    样例输入

    32+64

    样例输出

    96
    思路:使用字符串,从前往后扫,直至结束,把符号提出来,进行运算。
    注意:输入时一定要用gets(char)库函数,否则会报错的!
    代码如下:
     1 #include<stdio.h>
     2 int main()
     3 {
     4     char str[50],c;
     5     int a=0,b=0,res,i=0;
     6     int flag=1;
     7     gets(str);
     8     while(str[i]!='')
     9     {
    10         if(str[i]>='0'&&str[i]<='9')
    11         {
    12             if(flag==1)
    13             {
    14                 a=a*10+str[i]-'0';
    15             }
    16             else
    17             {
    18                 b=b*10+str[i]-'0';
    19             }
    20         }
    21         else if(str[i]!=' ')
    22         {
    23             c=str[i];
    24             flag++;
    25         }
    26         i++;
    27     }
    28     switch(c)
    29     {
    30         case '+':
    31             res=a+b;
    32             break;
    33         case '-':
    34             res=a-b;
    35             break;
    36         case '*':
    37             res=a*b;
    38             break;
    39         case '/':
    40             if(b==0) return 0;
    41             res=a/b;
    42             break;
    43         case '%':
    44             if(b==0) return 0;
    45             res=a%b;
    46             break;
    47     }
    48     printf("%d
    ",res);
    49     return 0;
    50 }
     
    我不怕千万人阻挡,只怕自己投降…
  • 相关阅读:
    植物大战僵尸游戏内存地址
    Win7如何取消用户登陆界面
    Adobe PS CS6安装详解
    MVC 支持同名路由,不同命名空间
    Session阻塞 读写锁引发的小问题
    GZipStream 压缩和解压
    IIS 工作原理之非托管代码旅程(一)
    Http协议(一)
    Css学习笔记 (一)
    Linq二 LinqToSql
  • 原文地址:https://www.cnblogs.com/geek-007/p/4295473.html
Copyright © 2011-2022 走看看