1、頭文件:#include
網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、微信平臺(tái)小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了渾南免費(fèi)建站歡迎大家使用!
2、原型:
double pow(double x, double y);
pow() 函數(shù)用來(lái)求 x 的 y 次冪(次方)
pow()用來(lái)計(jì)算以x 為底的 y 次方值,然后將結(jié)果返回。設(shè)返回值為 ret,則 ret = xy。
3、舉例如下:
double a = pow(4, 2); ?// 計(jì)算4的平方
4、可能導(dǎo)致錯(cuò)誤的情況:
如果底數(shù) x 為負(fù)數(shù)并且指數(shù) y 不是整數(shù),將會(huì)導(dǎo)致 domain error 錯(cuò)誤。
如果底數(shù) x 和指數(shù) y 都是 0,可能會(huì)導(dǎo)致 domain error 錯(cuò)誤,也可能沒(méi)有;這跟庫(kù)的實(shí)現(xiàn)有關(guān)。
如果底數(shù) x 是 0,指數(shù) y 是負(fù)數(shù),可能會(huì)導(dǎo)致 domain error 或 pole error 錯(cuò)誤,也可能沒(méi)有;這跟庫(kù)的實(shí)現(xiàn)有關(guān)。
如果返回值 ret 太大或者太小,將會(huì)導(dǎo)致 range error 錯(cuò)誤。
錯(cuò)誤代碼:
如果發(fā)生 domain error 錯(cuò)誤,那么全局變量 errno 將被設(shè)置為 ?EDOM;
如果發(fā)生 pole error 或 range error 錯(cuò)誤,那么全局變量 errno 將被設(shè)置為 ERANGE。
注意:1、使用pow函數(shù)時(shí),需要將頭文件#include包 ? ? ? ? ?含進(jìn)源文件中。
2、用pow(x,y)的話要用到math.h頭文件。
擴(kuò)展資料:
1、 三角函數(shù): double sin (double);正弦 ? double cos (double);余弦 ? double tan (double);正切
2 、反三角函數(shù): ? double asin (double); 結(jié)果介于[-PI/2, PI/2] ? double acos (double); 結(jié)果介于[0, PI] ? double atan (double); 反正切(主值), 結(jié)果介于[-PI/2, PI/2] ? double atan2 (double, double); 反正切(整圓值), 結(jié)果介于[-PI/2, PI/2]
3 、雙曲三角函數(shù): ? double sinh (double); ? double cosh (double); ? double tanh (double);
4 、指數(shù)與對(duì)數(shù): ? double exp (double); ? double sqrt (double);開平方 ? double log (double); 以e為底的對(duì)數(shù) ? double log10 (double);以10為底的對(duì)數(shù) ? double pow(double x, double y);計(jì)算以x為底數(shù)的y次冪 ? float powf(float x, float y); 功能與pow一致,只是輸入與輸出皆為浮點(diǎn)數(shù)
5 、取整: ? double ceil (double); 取上整 ? double floor (double); 取下整
6 、絕對(duì)值: ? double fabs (double);求絕對(duì)值 ? double cabs(struct complex znum) ;求復(fù)數(shù)的絕對(duì)值
7 、標(biāo)準(zhǔn)化浮點(diǎn)數(shù): ? double frexp (double f, int *p); 標(biāo)準(zhǔn)化浮點(diǎn)數(shù), f = x * 2^p, 已知f求x, p ( x介于[0.5, 1] ) ? double ldexp (double x, int p); 與frexp相反, 已知x, p求f
8 、取整與取余: ? double modf (double, double*); 將參數(shù)的整數(shù)部分通過(guò)指針回傳, 返回小數(shù)部分 ? double fmod (double, double); 返回兩參數(shù)相除的余數(shù)
9 、其他: ? double hypot(double x, double y);已知直角三角形兩個(gè)直角邊長(zhǎng)度,求斜邊長(zhǎng)度 ? double ldexp(double x, int exponent);計(jì)算x*(2的exponent次冪) ? double poly(double x, int degree, double coeffs [] );計(jì)算多項(xiàng)式 ? nt matherr(struct exception *e);數(shù)學(xué)錯(cuò)誤計(jì)算處理程序
1、新建一個(gè)c語(yǔ)言的工程文件,引入頭文件,這里先定義一個(gè)poewer函數(shù)處理x的y次方的計(jì)算,定義兩個(gè)參數(shù)n和k,分別表示輸入的數(shù)和要求的次方數(shù):
2、在poewer函數(shù)中藥考慮k次方為1和0的情況,之后用遞歸的方式將n乘以不斷減小的k即刻完成n次方的計(jì)算。之后在主函數(shù)定義輸入的數(shù)據(jù),用scanf函數(shù)接受值,在調(diào)用power函數(shù)計(jì)算,最后輸出結(jié)果即可:
3、運(yùn)行程序,首先輸入數(shù)字5,按下回車,接著輸入數(shù)字6然后回車,最終程序打印出了5的6次方的結(jié)果。以上就是用C語(yǔ)言求X的Y次方的演示:
C語(yǔ)言中表達(dá)n次方可以用pow函數(shù)。
函數(shù)原型:double pow(double x, double y)
功 能:計(jì)算x^y的值
返 回 值:計(jì)算結(jié)果
舉例:
double a;a = pow(3.14, 2); // 計(jì)算3.14的平方,并將結(jié)果保存在變量a中
注:使用pow函數(shù)必須將頭文件#includemath.h包含進(jìn)源文件中
C語(yǔ)言中計(jì)算一個(gè)數(shù)的N次方可以用庫(kù)函數(shù)pow來(lái)實(shí)現(xiàn)。函數(shù)原型:double pow(double x, double y)。
代碼如下:
#include stdio.h
#include math.h
int main( )
{ ?
printf("%f",pow(x,y));
return 0;
}
注:使用pow函數(shù)時(shí),需要將頭文件#includemath.h包含進(jìn)源文件中。、
擴(kuò)展資料:
其他方法表示一個(gè)數(shù)的n次方:
#include stdio.h
int main( )
{ ? ?int i,k = n;? for(i = 1;i n;i++)
{? ? k *= 2;
}?
printf("%d",k);
return 0;
}
思路:定義一個(gè)函數(shù)fun(x,n)求x的n次方,即進(jìn)行n次for循環(huán)執(zhí)行x的累成,主函數(shù)調(diào)用fun函數(shù)。
參考代碼:
#include?stdio.h
int?fun(int?x,int?n){
int?s=1;
while(n--){
s*=x;
}
return?s;
}?
int?main()
{
int?x=2,y=10;
printf("%d\n",fun(2,10));
return?0;
}
/*
運(yùn)行結(jié)果:求2的10次方?
1024
*/
C語(yǔ)言中計(jì)算x的n次方可以用庫(kù)函數(shù)pow來(lái)實(shí)現(xiàn)。函數(shù)原型:doublepow(doublex,doublen)。
具體的代碼如下:
#includestdio.h
#includemath.h
intmain()
{
printf("%f",pow(x,n));
return0;
}
注:使用pow函數(shù)時(shí),需要將頭文件#includemath.h包含進(jìn)源文件中。
擴(kuò)展資料:
使用其他的方法得到x的n次方:
#includestdio.h
doublepower(doublex,intn);
main()
{
doublex;
intn;
printf("Inputx,n:");
scanf("%lf,%d",x,n);
printf("%.2lf",power(x,n));
}
doublepower(doublex,intn)
{
doublea=1.0;
inti;
for(i=1;i=n;i++)
a*=x;
returna;
}
本文題目:c語(yǔ)言編寫函數(shù)次方 c語(yǔ)言x的y次方
本文URL:http://aaarwkj.com/article46/dooohhg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、虛擬主機(jī)、品牌網(wǎng)站制作、自適應(yīng)網(wǎng)站、靜態(tài)網(wǎng)站、定制開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
營(yíng)銷型網(wǎng)站建設(shè)知識(shí)