zoukankan      html  css  js  c++  java
  • 百练:2694:波兰表达式

    题目

    波兰表达式:在这里就是指运算符前缀。例如2+3可以写成+ 2 3 。

    逆波兰表达式:运算符后缀就是逆波兰表达式。例如2+3可以写成2 3 + 。

    求值过程有两种:

    一种是使用堆栈,另外一种是使用递归函数。

    #include<stdio.h>
    #include<math.h>
    #include <stdlib.h>
    char str[100];
    
    double exper()
    {
        scanf("%s",str);
        if(str[0]=='+')
            return exper()+exper();
        else if(str[0]=='-')
            return exper()-exper();
        else if(str[0]=='*')
            return exper()*exper();
        else if(str[0]=='/')
            return exper()/exper();
        else
            return atof(str);
    }
    int main()
    {
        printf("%lf
    ",exper());
        return 0;
    }
    
    atof(str)把字符串转换为一个double类型的浮点数。atof定义在math.h中,stdlib.h
  • 相关阅读:
    harbor docker
    dns服务器
    k8s
    frps
    svn 搭建
    phpstrom 破解 转载https://www.jianshu.com/p/e71361b3bfee
    公开课
    k8s
    rsync各种备份
    定时任务
  • 原文地址:https://www.cnblogs.com/qie-wei/p/10160208.html
Copyright © 2011-2022 走看看