#includestdio.h
成都創(chuàng)新互聯(lián)公司是一家專注于成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),石拐網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)十年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:石拐等地區(qū)。石拐做網(wǎng)站價(jià)格咨詢:13518219792
int power(int n,int p);
void main()
{ int S[8];
int i=0;
int n=2;
printf("The results is:\n");
for(i=0;i8;i++)
{
S[i]=power(n,i+1);//調(diào)用函數(shù)
printf("%d\n",S[i]);
}
printf("That's all\n");
}
int power(int n,int p)
{
int pow=1;
int i;
for(i=0;i=p;i++)
pow*=n;
return pow;
}
在調(diào)用:S[i]=power(n,i); 之前,i未初始化,可以手動(dòng)輸出來看一下,值結(jié)果是隨機(jī)的,并不一定是0。
編譯會(huì)提示:Warning: Possible use of 'i' before definition in function main在do{}while;中,開關(guān)i值并未改變,若i8成立,那么程序就會(huì)變成死循環(huán)。
一開始的那個(gè)i沒有初始化,s[i]不知道用哪里的內(nèi)存了。還有每次循環(huán)后記得i++。
擴(kuò)展資料:
注意事項(xiàng)
pow() 函數(shù)用來求 x 的 y 次冪(次方),其原型為:double pow(double x, double y);
pow()用來計(jì)算以x 為底的 y 次方值,然后將結(jié)果返回。設(shè)返回值為 ret,則 ret = xy。
可能導(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ò)誤,也可能沒有;這跟庫的實(shí)現(xiàn)有關(guān)。
如果底數(shù) x 是 0,指數(shù) y 是負(fù)數(shù),可能會(huì)導(dǎo)致 domain error 或 pole error 錯(cuò)誤,也可能沒有;這跟庫的實(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。
Math.pow(底數(shù),幾次方)
如:double a=2.0;
double b=3.0;
double c=Math.pow(a,b);
就是2的三次方是多少;
c最終為8.0;
C語言中計(jì)算x的n次方可以用庫函數(shù)pow來實(shí)現(xiàn)。函數(shù)原型:double pow(double x, double n)。
具體的代碼如下:
#include stdio.h
#include math.h
int main( )
{ ?
printf("%f",pow(x,n));
return 0;
}
注:使用pow函數(shù)時(shí),需要將頭文件#includemath.h包含進(jìn)源文件中。
擴(kuò)展資料:
使用其他的方法得到x的n次方:
#includestdio.h
double power(double x,int n);
main( )
{
double x;
int n;
printf("Input x,n:");
scanf("%lf,%d",x,n);
printf("%.2lf",power(x,n));
}
double power(double x,int n)
{
double a=1.0;
int i;
for(i=1;i=n;i++)
a*=x;
return a;
}
C語言中計(jì)算一個(gè)數(shù)的N次方可以用庫函數(shù)pow來實(shí)現(xiàn)。函數(shù)原型:double pow(double x, double y)。
舉例如下:
double?a?=?pow(3.14,?2);??//?計(jì)算3.14的平方。
注:使用pow函數(shù)時(shí),需要將頭文件#includemath.h包含進(jìn)源文件中。
拓展資料:
次方運(yùn)算是數(shù)學(xué)運(yùn)算,我們可能在其他語言中比如VB中見過冪運(yùn)算符,在VB中計(jì)算2的3次方,可以直接使用2^3就可以算出結(jié)果。C標(biāo)準(zhǔn)庫中有兩個(gè)可以解決解決我們的冪運(yùn)算問題,分別是math.h和tgmath.h。