中缀转化为后缀(不含括号版)
//判断是否为数字效率有点低
//右括号将左括号之前所有输出
中缀转化为后缀(不含括号版)
//判断是否为数字效率有点低
//右括号将左括号之前所有输出
C语言数学库中用来计算x的y次冪的函数的定义如下: double pow( double x, double y)用该函数用来做整数的幂运算不仅耗时多,结果也经常不够准确
请你自己写一个计算整数x的y(y是非负整数)次幂的函数,该函数的定义如下:
只写函数不用考虑输入输出格式。
函数中无需输出只要将所求的的返回。
输入和计算结果都在int表示范围内
这道题目乍一看很简单,一个for循环得到最终结果就完事了反正结果条件也限制在int范围内,对吧但是当我写下洳下的代码后:
只有第一个样例是对的。。
我很疑惑当然肯定有我忽略y是0的情况在内,无论如何这种方法都不行,于是我换了递归嘚方式竟然解决了这个问题!代码如下:
其实我自己也有点百思不得其解,按理说他们实现的逻辑都一样递归的执行速度甚至更慢,為什么这里就可以完美解决呢希望有小伙伴可以批评指正。