c語言的開方函數(shù)是:sqrt()函數(shù)。
創(chuàng)新互聯(lián)公司作為成都網(wǎng)站建設公司,專注網(wǎng)站建設、網(wǎng)站設計,有關成都企業(yè)網(wǎng)站定制方案、改版、費用等問題,行業(yè)涉及圍欄護欄等多個領域,已為上千家企業(yè)服務,得到了客戶的尊重與認可。
1、功能:計算一個非負實數(shù)的平方根。
2、函數(shù)原型:在VC6.0中的math.h頭文件的函數(shù)原型為double sqrt(double)。
3、說明:sqrt系Square Root Calculations(平方根計算),通過這種運算可以考驗CPU的浮點能力。
4、頭文件:math
double sqrt(double x)
參數(shù)解釋:
x 為要計算平方根的值。
如果 x 0,將會導致 domain error 錯誤,并把全局變量 errno 的值為設置為 EDOM。
返回 x 平方根。
注意,使用 GCC 編譯時請加入-lm。
例:
擴展資料:
sqrt()函數(shù)的注意事項:
1、sqrt()函數(shù),里面的形參是double型的,所以調(diào)用的時候,要強制轉換成double型。
2、sqrt()函數(shù)都最后返回值是double型,而n是int型,所以要強制轉換n=(int)sqrt((double)x)。
3、到底要不要進行強制轉換,需要看這個函數(shù)的形參和返回值是什么類型,如果沒有進行強制轉換,有的編譯器會警告,有的會報錯,有的就直接通過。
參考資料:
百度百科--平方根計算
頭文件:#include math.h
sqrt() 用來求給定值的平方根,其原型為:double sqrt(double x);double sqrt(double x)。
x 為要計算平方根的值。
如果 x 0,將會導致 domain error 錯誤,并把全局變量 errno 的值為設置為 EDOM。
返回 x 平方根。注意,使用 GCC 編譯時請加入-lm。實例計算200 的平方根值。
例子:
#include math.hmain(){??double root;??root = sqrt(200);??printf("answer is %f\n", root);}
輸出結果:answer is 14.142136。
擴展資料:
使用sqrt函數(shù)需要注意的事項:
1、sqrt函數(shù)運行的是結果是算術平方根,即不能運算處負數(shù)值,也不能輸出虛數(shù)結果。如需要得到算術平方根中的負數(shù)值,則應該在sqrt函數(shù)前添加負號。
2、sqrt函數(shù)的參數(shù)必須是非負數(shù)值,如果是負數(shù)值,則輸出會報錯,即數(shù)值無效;如果參數(shù)是未定義的非數(shù)字變量,則按回車后也會報錯,即變量名有誤。
3、sqrt函數(shù)的計算精度與C語言設置的精度有關,可以通過設置更改精度。
直接用兩個數(shù)(或變量)相乘就可以表示平方,比如x*x
不過如果,需要求m的n次方,就需要用到pow(x,y)乘方(包括開方)這個庫函數(shù)了,使用pow(x,y)這個庫函數(shù),需要math.h頭文件。
其中x和y都是雙精度浮點(double)型。
#include"math.h"
U32sqrt_fun(U64x){
U32low=0;
U32high=x;
U32mid;
U64data;
while(low high){
mid=(low+high)/2;
data=(U64)mid*mid;
if(data x){
high=mid-1;
}else if(data x){
low=mid+1;
}else{
return(mid);
}
}
return(mid);
}
voidmain(void){
volatileU32td1,td2;
U64d=0x12345678ABCD;
td2=sqrt(d);
td1=sqrt_fun(d);
}
擴展資料
C語言無參函數(shù)的定義:
dataType是返回值類型,它可以是C語言中的任意數(shù)據(jù)類型,例如int、float、char等。
functionName 是函數(shù)名,它是標識符的一種,命名規(guī)則和標識符相同。函數(shù)名后面的括號( )不能少。
body是函數(shù)體,它是函數(shù)需要執(zhí)行的代碼,是函數(shù)的主體部分。即使只有一個語句,函數(shù)體也要由{}包圍。
如果有返回值,在函數(shù)體中使用return語句返回。return出來的數(shù)據(jù)的類型要和dataType一樣。
若開平方,可以使用函數(shù)sqrt()完成,若開其他次方,可以借助函數(shù)pow()完成。
開平方示例:
#includemath.h//sqrt函數(shù)使用到的頭文件
#includestdio.h
int main(void)
{
double x=4.0,result;
result=sqrt(x);//對x開平方
printf("%g\n",result);
return 0;
}
//輸入結果:2
開三次方示例:
#includemath.h//pow函數(shù)使用的頭文件
#includestdio.h
int main(void)
{
double x=27.0,result;
result=pow(x, 1.0/3);//對x開三次方
printf("%g\n",result);
return 0;
}
//輸出結果:3
對于借助pow函數(shù)實現(xiàn)開方的可以借鑒開三次方示例代碼。