小编给大家分享一下怎么使用C语言求幂函数和指数函数,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
用C语言求幂函数和指数函数的方法,即pow)函数和sqrt)函数:
C语言pow)函数:求x的y次方次幂)
头文件:
#include
pow) 函数用来求 x 的 y 次幂次方),其原型为:
double powdouble x, double y);
pow)用来计算以x 为底的 y 次方值,然后将结果返回。设返回值为 ret,则 ret = xy。
可能导致错误的情况:
如果底数 x 为负数并且指数 y 不是整数,将会导致 domain error 错误。
如果底数 x 和指数 y 都是 0,可能会导致 domain error 错误,也可能没有;这跟库的实现有关。
如果底数 x 是 0,指数 y 是负数,可能会导致 domain error 或 pole error 错误,也可能没有;这跟库的实现有关。
如果返回值 ret 太大或者太小,将会导致 range error 错误。
错误代码:
如果发生 domain error 错误,那么全局变量 errno 将被设置为 EDOM;
如果发生 pole error 或 range error 错误,那么全局变量 errno 将被设置为 ERANGE。
注意,使用 GCC 编译时请加入-lm。
【实例】请看下面的代码。
#include #include int main ) { printf "7 ^ 3 = %f\n", pow 7.0, 3.0) ); printf "4.73 ^ 12 = %f\n", pow 4.73, 12.0) ); printf "32.01 ^ 1.54 = %f\n", pow 32.01, 1.54) ); return 0; }
输出结果:
7 ^ 3 = 343.000000 4.73 ^ 12 = 125410439.217423 32.01 ^ 1.54 = 208.036691
C语言sqrt)函数:求给定值的平方根
头文件:
#include
sqrt) 用来求给定值的平方根,其原型为:
double sqrtdouble x);
【参数】x 为要计算平方根的值。
如果 x < 0,将会导致 domain error 错误,并把全局变量 errno 的值为设置为 EDOM。
【返回值】返回 x 平方根。
注意,使用 GCC 编译时请加入-lm。
【实例计算200 的平方根值。】
#include
main){
double root;
root = sqrt200);
printf"answer is %f\n", root);
}
输出结果:
answer is 14.142136