十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
pow函数原型是:double pow(double x, double y);
创新互联建站坚信:善待客户,将会成为终身客户。我们能坚持多年,是因为我们一直可值得信赖。我们从不忽悠初访客户,我们用心做好本职工作,不忘初心,方得始终。10余年网站建设经验创新互联建站是成都老牌网站营销服务商,为您提供成都网站设计、成都网站制作、网站设计、H5网站设计、网站制作、品牌网站制作、小程序制作服务,给众多知名企业提供过好品质的建站服务。
参数和返回值都是double,不是int。
#include stdio.h
#includemath.h
int main()
{
double x=1.07,y=10.0;
printf("%lf",pow(x,y));
return 0;
}
C语言中有两种方式可以表示指数:
1、直接用浮点数表示:10的N次方为 1e10 也可写成1e+10(如果是负N次方的话就把加号变成减号)。e大小写都可以,需要注意的是e前面必须有一个数字,不然的话就非法表达。
2、用幂函数表示:在c语言中,求x的y次方可用pow(x,y)表示,所以10的N次方也可表示为pow(10,N)。其中pow函数在头文件math.h中,所以调用该函数的时候,必须将math.h加进来,即#include math.h
原型:extern float pow(float x, float y);
功能:计算x的y次幂。
说明:x应大于零,返回幂指数的结果。
C语言中指针运算要用pow()函数,例如2的4次方要写成这样:
pow(2,4);
^在C语言中是一个位操作符,作用是按位异或。
注意:pow()函数要包含math.h文件
扩展资料:
c语言基本运算符
C语言中用于基本算术运算的运算符有:+,-,*,%,/。这些运算符的用法和你想像到的基本无异:
加法运算符 “+”使得它两侧的值被加到一起。
减法运算符“-”用它前面的数减去后面的数。
乘法由“*”表示。C语言并没有计算平方的函数,也没有指数运算符。但你可以利用乘法来计算平方。
符号“%”表示求余。求余运算的结果是两数相除后的余数。因此,参与运算的值必须为整数。
符号“/”表示除法。注意,浮点类型的除法运算得到一个浮点数结果,而整数除法运算得到一个整数结果。
比如5/2的结果是2。当你对整数和浮点数进行混合运算时,结果是浮点数,比如5/2.0的结果是2.5。
用pow()函数
如:
#include stdlib.h
#include math.h
#include conio.h
void main()
{
printf("10^20=%f",pow(10.,20.));
getchar();
}
基本性质
(1) 指数函数的定义域为R,这里的前提是a大于0且不等于1。对于a不大于0的情况,则必然使得函数的定义域不连续,因此我们不予考虑,同时a等于0函数无意义一般也不考虑。
(2) 指数函数的值域为(0, +∞)。
(3) 函数图形都是上凹的。
(4) a1时,则指数函数单调递增;若0单调递减的。
以上内容参考:百度百科-指数函数
在开始加上#include math.h;
程序中就可以调用pow(x,y)。
main()
{
double z;
z=pow(10,5);
printf("%lf/n",z);
}
输出结果:
285.000000
扩展资料
c语言求自然对数的底e的指数,可以使用函数exp().
exp()的头文件:#include
exp()的函数原型:double exp(double x);
exp()函数的作用:返回e的x次方。
exp()的相关函数:float expf(float x);
long double expl(long double x);
注:自然对数的底e叫做: 欧拉数(eula's number)
C语言中的POW函数使用:
#includestdio.h
#defineACCURACY100
doublefunc1(doublet,intn);
doublefunc2(doubleb,intn);
doublepow2(doublea,doubleb);
intmain(){
printf("%lf",pow2(5.21,4.11));
return0;
}
doublepow2(doublea,doubleb){
if(a==0b0){
return0;
}
elseif(a==0b=0){
return1/0;
}
elseif(a0!(b-(int)b0.0001||(b-(int)b0.999))){
return1/0;
}
if(a=2a=0){
doublet=a-1;
doubleanswer=1;
for(inti=1;iACCURACY;i++){
answer=answer+func1(t,i)*func2(b,i);
}
returnanswer;
}
elseif(a2){
inttime=0;
while(a2){
a=a/2;
time++;
}
returnpow2(a,b)*pow2(2,b*time);
}
else{
if((int)b%2==0){
returnpow2(-a,b);
}
else{
return-pow2(-a,b);
}
}
}
doublefunc1(doublet,intn){
doubleanswer=1;
for(inti=0;in;i++){
answer=answer*t;
}
returnanswer;
}
doublefunc2(doubleb,intn){
doubleanswer=1;
for(inti=1;i=n;i++){
answer=answer*(b-i+1)/i;
}
returnanswer;
}
扩展资料
C++提供以下几种pow函数的重载形式:
doublepow(doubleX,intY);
floatpow(floatX,floatY);
floatpow(floatX,intY);
longdoublepow(longdoubleX,longdoubleY);
longdoublepow(longdoubleX,intY);
使用的时候应合理设置参数类型,避免有多个“pow”实例与参数列表相匹配的情况。
其中较容易发生重载的是使用形如:
intX,Y;
intnum=pow(X,Y);
这是一个比较常用的函数,但是编译器会提醒有多个“pow”实例与参数列表相匹配。
可以使用强制类型转换解决这个问题:num=pow((float)X,Y);