C語(yǔ)言中指針運(yùn)算要用pow()函數(shù),例如2的4次方要寫(xiě)成這樣:
成都創(chuàng)新互聯(lián)憑借專業(yè)的設(shè)計(jì)團(tuán)隊(duì)扎實(shí)的技術(shù)支持、優(yōu)質(zhì)高效的服務(wù)意識(shí)和豐厚的資源優(yōu)勢(shì),提供專業(yè)的網(wǎng)站策劃、成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、網(wǎng)站優(yōu)化、軟件開(kāi)發(fā)、網(wǎng)站改版等服務(wù),在成都十多年的網(wǎng)站建設(shè)設(shè)計(jì)經(jīng)驗(yàn),為成都上千多家中小型企業(yè)策劃設(shè)計(jì)了網(wǎng)站。
pow(2,4);
^在C語(yǔ)言中是一個(gè)位操作符,作用是按位異或。
注意:pow()函數(shù)要包含math.h文件
擴(kuò)展資料:
c語(yǔ)言基本運(yùn)算符
C語(yǔ)言中用于基本算術(shù)運(yùn)算的運(yùn)算符有:+,-,*,%,/。這些運(yùn)算符的用法和你想像到的基本無(wú)異:
加法運(yùn)算符 “+”使得它兩側(cè)的值被加到一起。
減法運(yùn)算符“-”用它前面的數(shù)減去后面的數(shù)。
乘法由“*”表示。C語(yǔ)言并沒(méi)有計(jì)算平方的函數(shù),也沒(méi)有指數(shù)運(yùn)算符。但你可以利用乘法來(lái)計(jì)算平方。
符號(hào)“%”表示求余。求余運(yùn)算的結(jié)果是兩數(shù)相除后的余數(shù)。因此,參與運(yùn)算的值必須為整數(shù)。
符號(hào)“/”表示除法。注意,浮點(diǎn)類型的除法運(yùn)算得到一個(gè)浮點(diǎn)數(shù)結(jié)果,而整數(shù)除法運(yùn)算得到一個(gè)整數(shù)結(jié)果。
比如5/2的結(jié)果是2。當(dāng)你對(duì)整數(shù)和浮點(diǎn)數(shù)進(jìn)行混合運(yùn)算時(shí),結(jié)果是浮點(diǎn)數(shù),比如5/2.0的結(jié)果是2.5。
C語(yǔ)言中有兩種方式可以表示指數(shù):
1、直接用浮點(diǎn)數(shù)表示:10的N次方為 1e10 也可寫(xiě)成1e+10(如果是負(fù)N次方的話就把加號(hào)變成減號(hào))。e大小寫(xiě)都可以,需要注意的是e前面必須有一個(gè)數(shù)字,不然的話就非法表達(dá)。
2、用冪函數(shù)表示:在c語(yǔ)言中,求x的y次方可用pow(x,y)表示,所以10的N次方也可表示為pow(10,N)。其中pow函數(shù)在頭文件math.h中,所以調(diào)用該函數(shù)的時(shí)候,必須將math.h加進(jìn)來(lái),即#include math.h
原型:extern float pow(float x, float y);
功能:計(jì)算x的y次冪。
說(shuō)明:x應(yīng)大于零,返回冪指數(shù)的結(jié)果。
C語(yǔ)言中的POW函數(shù)使用:
#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;
}
擴(kuò)展資料
C++提供以下幾種pow函數(shù)的重載形式:
doublepow(doubleX,intY);
floatpow(floatX,floatY);
floatpow(floatX,intY);
longdoublepow(longdoubleX,longdoubleY);
longdoublepow(longdoubleX,intY);
使用的時(shí)候應(yīng)合理設(shè)置參數(shù)類型,避免有多個(gè)“pow”實(shí)例與參數(shù)列表相匹配的情況。
其中較容易發(fā)生重載的是使用形如:
intX,Y;
intnum=pow(X,Y);
這是一個(gè)比較常用的函數(shù),但是編譯器會(huì)提醒有多個(gè)“pow”實(shí)例與參數(shù)列表相匹配。
可以使用強(qiáng)制類型轉(zhuǎn)換解決這個(gè)問(wèn)題:num=pow((float)X,Y);
在開(kāi)始加上#include math.h;
程序中就可以調(diào)用pow(x,y)。
main()
{
double z;
z=pow(10,5);
printf("%lf/n",z);
}
輸出結(jié)果:
285.000000
擴(kuò)展資料
c語(yǔ)言求自然對(duì)數(shù)的底e的指數(shù),可以使用函數(shù)exp().
exp()的頭文件:#include
exp()的函數(shù)原型:double exp(double x);
exp()函數(shù)的作用:返回e的x次方。
exp()的相關(guān)函數(shù):float expf(float x);
long double expl(long double x);
注:自然對(duì)數(shù)的底e叫做: 歐拉數(shù)(eula's number)
指數(shù)表示有兩種方法:
1、使用關(guān)鍵字e,如 5e10表示5*10^10,5e-5表示1*10^(-5)=0.00001。
優(yōu)點(diǎn)是簡(jiǎn)單明了,和科學(xué)記數(shù)法類似;缺點(diǎn)是只能表示10為底的指數(shù)。
2、使用指數(shù)函數(shù)pow。使用范圍比e廣得多,任意浮點(diǎn)數(shù)為底數(shù)和指數(shù)。
原型為double pow( double x, double y );
頭文件:math.h
功能:計(jì)算x的y次冪。
返回值:x不能為負(fù)數(shù)且y為小數(shù),或者x為0且y小于等于0,返回冪指數(shù)的結(jié)果。
返回類型:double型,int,float會(huì)給與警告!
舉例:
#includemath.h
#includestdio.h
int?main(){
double?x?=2.0,y=3.0;
printf("%lfraisedto%lfis%lf\n",x,y,pow(x,y));
return?0;
}