剑指offer 面试题11
2018-03-03 22:42
204 查看
面试11:数值的整数次方题目:实现函数double power(double base,int exponent),求base的exponent次方,不得使用库函数,同时不需要考虑大数问题。首先这个题虽然简单,但是有很多小细节,比如base等于0,或者exponent小于0这些情况都是需要好好考虑考虑的。解题思路很简单,主要是一些小细节。base为0的情况
exponent小于0.
Base为0时,浮点数怎么和0比较。
我的代码如下:#include<stdio.h> bool Equal(double num1,double num2){ if(num1-num2>0.00001 && num1-num2<0.00001) { return true; } else { return false; }} double Power(double base,int exponent){ //int flag=1; double result=1.0; if(Equal(base,0) && exponent < 0) { return 1; } else if(exponent<0) { exponent=exponent-2*exponent; for(int i=1; i<=exponent; i++) { result=result*base; } result=1/result; return result; } else if(exponent>0) { for(int i=1; i<=exponent; i++) { result=result*base; } return result; }} int main(){ double a=Power(2,2); printf("%f\n",a); double b=Power(2.5,3); printf("%f\n",b); double c=Power(4.6,-2); printf("%f\n",c);}执行结果:
exponent小于0.
Base为0时,浮点数怎么和0比较。
我的代码如下:#include<stdio.h> bool Equal(double num1,double num2){ if(num1-num2>0.00001 && num1-num2<0.00001) { return true; } else { return false; }} double Power(double base,int exponent){ //int flag=1; double result=1.0; if(Equal(base,0) && exponent < 0) { return 1; } else if(exponent<0) { exponent=exponent-2*exponent; for(int i=1; i<=exponent; i++) { result=result*base; } result=1/result; return result; } else if(exponent>0) { for(int i=1; i<=exponent; i++) { result=result*base; } return result; }} int main(){ double a=Power(2,2); printf("%f\n",a); double b=Power(2.5,3); printf("%f\n",b); double c=Power(4.6,-2); printf("%f\n",c);}执行结果:
相关文章推荐
- 剑指Offer面试题11[数值的整数次方]
- 剑指Offer学习之面试题11 :数值的整数次方
- [剑指offer][面试题11]数值的整数次方
- 剑指Offer面试题11(Java版):数值的整数次方
- 剑指offer编程题Java实现——面试题11数值的整数次方
- 剑指Offer----面试题11:数值的整数次方
- 剑指offer--面试题11:旋转数组的最小数字
- 剑指Offer面试题:11.打印1到最大的n位数
- C++剑指offer_面试题11_数值的整数次方(*)
- 剑指offer——面试题11:数值的整数次方
- 剑指Offer面试题11(Java版):数值的整数次方
- 剑指Offer之面试题11:数值的整数次方
- 剑指Offer--面试题11 数值的整数次方
- 剑指offer——面试题11:数值的整数次方
- 【剑指offer】面试题11:数值的整数次方
- 剑指offer面试题11 数值的整数次方
- 剑指offer-3-面试题11:数值的整数次方(对错误的处理)
- 剑指offer——面试题11:数值的整数次方
- 【剑指offer】面试题11:旋转数组的最小数字
- 剑指offer--面试题11