c語言裡面怎麼使用pow函式艾比如我要計算10的次

2021-04-22 07:45:04 字數 4280 閱讀 9956

1樓:匿名使用者

^#include

#include//必須引用頭文來件

int main()

c語言中的pow函式怎麼使用

2樓:丿

pow()函式用來求x的y次冪,x、y及函式值都是double型 ,其原型為:double pow(double x, double y)。

例項**如下:

#include

#include

void main()

擴充套件資料

在呼叫pow函式時,可能導致錯誤的情況:

如果底數 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。

3樓:檀香透窗櫺

使用方法:

# include //這個。其實沒

有也可以。

double x,y,z;//自己按需賦值。【1】

z=pow(x,y);

printf(「%lf\n【2】」,z【3】);//可以根據想輸出幾位,比如說輸出一位小數%.1lf,來調整。

2.   備註項的其他形式

【1】賦值

(1) 當將」x」,」y」定義為int的時候,也可以,備註三也成立。

(2) 當將」z」定義為int的時候,也可以,只需要將printf的型別變成」%d」。

【2】「%lf」

因為,現在z的型別是double,所以使用「%lf」若使用「%d」,則總輸出為零。

【3】「z」

要是這裡想把「z」變成「pow(x,y)」也是可以的。

擴充套件資料

型別轉換對於pow會產生的問題:

當將」z」定義為int,或者是printf的型別變成」%d」的時候,產生了一個由double變成int的轉化問題。在這裡,轉化過程非常粗暴,會直接去掉小數,從而導致誤差。

為了避免這個問題,又想要輸出整數,可以採取的做法:

1) printf("%.0lf",pow(x,y));

2) printf("%d",(int)(pow(x,y)+0.5));//人為四捨五入

4樓:韌勁

1,要加入標頭檔案 math.h

2,pow(x,y);//其作用是計算x的y次方。x、y及函式值都是double型

例:我要計算2的5次方

源**如下:

#include"stdio.h"

#include"math.h"

main()

5樓:匿名使用者

標頭檔案是「math.h」

pow(x,y);x的y次方

6樓:幻翼高達

需要準備的材料分別有:電腦、c語言編譯器。

1、首先,開啟c語言編譯器,新建一個初始.cpp檔案,例如:test.cpp。

2、在test.cpp檔案中,輸入c語言**:

double a = 1000, n = 10, p = 0.001;

printf("%lf", a * pow(1+p, n) - a);

3、編譯器執行test.cpp檔案,此時成功列出公式並計算出了利息結果。

7樓:混世達人

賦值 (1) 當將」

x」,」y」定義為

int的時候,也可以,備註三也成立。 (2) 當將」z」定義為int的時候,也可以,只需要將printf的型別變成」%d」

2.「%lf」 因為,現在z的型別是double,所以使用「%lf」若使用「%d」,則總輸出為零。

3.「z」 要是這裡想把「z」變成「pow(x,y)」也是可以的。 擴充套件資料 型別轉換對於pow會產生的問題:…

8樓:天雲一號

pow函式是c語言的一個庫函式。

函式原型:double pow(double x, double y);

功       能:計算x^y

返 回  值:計算結果

舉例如下:

double x = 3.14, y=2, z;

z = pow(x, y); // 計算x^y,即3.14的平方注:使用pow函式的時候,需要將標頭檔案#include包含進原始檔中。

9樓:

#include

#include

int main()

pow函式是這樣用的,a=pow(b,c);

表示a等於b的c次方

10樓:匿名使用者

原型:extern float pow(float x, float y);

用法:#include

功能:計算x的y次冪。

說明:x應大於零,返回冪指數的結果。

舉例:// pow.c

#include

#include

main()

11樓:匿名使用者

c98標準原型:

double pow (double base, double exponent);

float pow (float base, float exponent);

long double pow (long double base, long double exponent);

double pow (double base, int exponent);

long double pow (long double base, int exponent);

標頭檔案:

#include

功能:計算base的exponent次冪。

說明:base應大於零,返回冪指數的結果。

舉例:// pow.c

#include

#include

int main()

12樓:匿名使用者

vc除錯,已改,更改位置見程式中相應的註釋部分:

#include

#include

#include

#define n 10

int function(char a)

for(i=0;i

13樓:孟羽然

printf("%f\n", pow(2,3));

14樓:匿名使用者

#include

void main( )

15樓:

你首先要給我說你用的哪個編譯器啊

我在vs2005下用你的相同**得出的結果是三個數都是100

只是pow(float,float)才是正確的用法,你可以償試把你的所有型別改一下試試,從你的測試結果來說,很可能是型別轉換的時候的問題,int 型的i=2,被編譯器轉成float的時候有誤差,只有1.999……,然後10的i次方不到100,只有99點幾,然後轉給a的時候再轉換成int就只有99了,而你直接輸入2的時候就沒有問題。這只是一種猜測,你得把你的編譯環境也作為條件給出來才能有準確的判斷。

16樓:匿名使用者

實在不會用可以自己寫啊

其實就是一個迴圈啦

看你會不會優化了

要是想知道怎麼使用

建議你差一查msdn上面都有詳細的說明文件的

c語言中不呼叫pow函式的話怎麼編寫x的n次方?

17樓:匿名使用者

<=n;i++) x*=x;printf("%d",x);return;}大概就是這樣!

18樓:匿名使用者

power(x,n)

19樓:悉邁楚高卓

for(i=1;i

c語言請問為什麼這兒pow函式會報錯

vlookup d4,a 2 b 111,3,0 引數table array為 a 2 b 111,一共只有兩列,引數table array,col index num 2,而你輸入的是3,當然返回quot n aquot c語言 請問為什麼這兒pow函式會報錯?檢查你的c 安裝目錄下 includ...

C語言scanf 函式中使用lf的問題

編譯器問題 因為我是vs2012,所以沒有問題。原因是編譯器在編譯的時候沒有連結浮點數相關的庫,可以在定義變數的時候初始化一下。double a 0.0,像這樣,然後應該就ok了。scanf lf lf a,b printf lf lf a,b 注意程式格式書寫,必須用英文ascii 碼,例如 空格...

C語言中指數表示法怎麼使用,c 指數函式怎麼表達

c語言中有兩種方式可以表示指數 1 直接用浮點數表示 10的n次方為 1e10 也可寫成1e 10 如果是負n次方的話就把加號變成減號 e大小寫都可以,需要注意的是e前面必須有一個數字,不然的話就非法表達。2 用冪函式表示 在c語言中,求x的y次方可用pow x,y 表示,所以10的n次方也可表示為...