double mypow(double x, int n) { if (n == 0) { // 0次幂为1 return 1; } else if (n == 1) { // 1次幂为x本身 return x; } else if (n < 0) { // 负次幂,转化为正次幂 return 1 / mypow(x, -n); } else if (n % 2 == 0) { // 偶数次幂,可以分解为两个x的n/2次幂相乘 return mypow(x * x, n / 2); } else { // 奇数次幂,可以分解为x本身和x的n-1次幂相乘 return x * mypow(x, n - 1); } }

简单实现x的n次方分数 15作者 颜晖单位 浙大城市学院本题要求实现一个计算x n n≥0的函数。函数接口定义:double mypow double x int n ;函数mypow应返回x的n次幂的值。题目保证结果在双精度范围内。

原文地址: http://www.cveoy.top/t/topic/eCKQ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录