b的類型聲明錯誤,sprt函數返回double值。
成都創新互聯公司公司2013年成立,先為烏爾禾等服務建站,烏爾禾等地企業,進行企業商務咨詢服務。為烏爾禾企業網站制作PC+手機+微官網三網同步一站式服務解決您的所有建站問題。
DOUBLE 數據類型保存雙精度浮點數。它是一種近似數字數據類型,在算術運算后容易產生舍入誤差。DOUBLE 值的近似特性意味著在比較 DOUBLE 值時通常應該避免使用等式的查詢。
DOUBLE 值需要 8 個存儲字節。
取值范圍是 -1.79769313486231e+308 到 1.79769313486231e+308,最趨近于零的數為 2.22507385850721e-308。DOUBLE 類型的值精確到 15 位有效數字,而超過第十五位就可能會產生舍入誤差。
sqrt()函數是cmath標頭(在早期版本中為math.h?)的庫函數,用于查找給定數字的平方根,它接受數字并返回平方根。
擴展資料:
float 與 double 類型區別:
float 單精度浮點數在機內占 4 個字節,用 32 位二進制描述。
double 雙精度浮點數在機內占 8 個字節,用 64 位二進制描述
浮點數在機內用指數型式表示,分解為:數符,尾數,指數符,指數四部分。
數符占 1 位二進制,表示數的正負。
指數符占 1 位二進制,表示指數的正負。
尾數表示浮點數有效數字,0.xxxxxxx, 但不存開頭的 0 和點。
指數存指數的有效數字。
指數占多少位,尾數占多少位,由計算機系統決定。
可能是數符加尾數占 24 位,指數符加指數占 8 位 --?float。
數符加尾數占 48 位,指數符加指數占 16 位 --?double。
知道了這四部分的占位,按二進制估計大小范圍,再換算為十進制,就是你想知道的數值范圍。
表示如下:
首先要把math頭文件添加進去
#includemath.h
在程序中調用 sqrt()函數
給個簡單的例子:
#include stdio.h
#include math.h
main ()
{
int a;
double b;
a = 100;
b=sqrt (a) ; ? ?//給a開平方
pintf("%lf",b);
}
C語言是一門面向過程的、抽象化的通用程序設計語言,廣泛應用于底層開發。C語言能以簡易的方式編譯、處理低級存儲器。
C語言是僅產生少量的機器語言以及不需要任何運行環境支持便能運行的高效率程序設計語言。盡管C語言提供了許多低級處理的功能,但仍然保持著跨平臺的特性,以一個標準規格寫出的C語言程序可在包括類似嵌入式處理器以及超級計算機等作業平臺的許多計算機平臺上進行編譯。
C語言是普適性最強的一種計算機程序編輯語言,它不僅可以發揮出高級編程語言的功用,還具有匯編語言的優點,因此相對于其它編程語言,它具有自己獨特的特點。具體體現為以下三個方面:
其一,廣泛性。C語言的運算范圍的大小直接決定了其優劣性。C語言中包含了34種運算符,因此運算范圍要超出許多其它語言,此外其運算結果的表達形式也十分豐富。此外,C語言包含了字符型、指針型等多種數據結構形式,因此,更為龐大的數據結構運算它也可以應付。
其二,簡潔性。9類控制語句和32個關鍵字是C語言所具有的基礎特性,使得其在計算機應用程序編寫中具有廣泛的適用性,不僅可以適用廣大編程人員的操作,提高其工作效率,同時還能夠支持高級編程,避免了語言切換的繁瑣。
其三,結構完善。C語言是一種結構化語言,它可以通過組建模塊單位的形式實現模塊化的應用程序,在系統描述方面具有顯著優勢,同時這一特性也使得它能夠適應多種不同的編程要求,且執行效率高。
c語言的開方函數是:sqrt()函數。
1、功能:計算一個非負實數的平方根。
2、函數原型:在VC6.0中的math.h頭文件的函數原型為double sqrt(double)。
3、說明:sqrt系Square Root Calculations(平方根計算),通過這種運算可以考驗CPU的浮點能力。
4、頭文件:math
double sqrt(double x)
參數解釋:
x 為要計算平方根的值。
如果 x 0,將會導致 domain error 錯誤,并把全局變量 errno 的值為設置為 EDOM。
返回 x 平方根。
注意,使用 GCC 編譯時請加入-lm。
例:
擴展資料:
sqrt()函數的注意事項:
1、sqrt()函數,里面的形參是double型的,所以調用的時候,要強制轉換成double型。
2、sqrt()函數都最后返回值是double型,而n是int型,所以要強制轉換n=(int)sqrt((double)x)。
3、到底要不要進行強制轉換,需要看這個函數的形參和返回值是什么類型,如果沒有進行強制轉換,有的編譯器會警告,有的會報錯,有的就直接通過。
參考資料:
百度百科--平方根計算
一般的來說在進行開方運算時,都會使用sqrt函數進行開方運算。使用sqrt時就需要引用頭文件math.h。(這里使用%d來輸出整數):
#includestdio.h
#includemath.h
int Mysqrt(int n)
{
return sqrt(n*1.0);
}
int main()
{
printf("%d\n",Mysqrt(10));
printf("%d\n",Mysqrt(9));
return 0;
}
擴展資料:
C語言編寫注意事項:
1、變量名以字母和數字組成, (下劃線"_"被默認為字符,以下劃線為首寫字母的為庫類變量名),變量常以小寫字母開頭.內部變量命前31位有效,外部名至少前6位保持唯一性、大小寫在C語言中是區分的。
2、一個字符常量為一個整數, 以''單引號括起。 '0' 為48, 與0沒有任何關系。
3、ANSI C語言的轉義符: \a 響鈴符; \b 回退符; \f 換頁符; \n 換行符; \r 回車符; \t 橫向制表符 \v 縱向制表符; \\ 反斜杠; \? 問號; \' 單引號;\" 雙引號; \ooo 八進制數; \xhh 十六進制數;
'\0' 表示0, 即(null).通常以'\0'形式表示0 以強調某些表達是的字符屬性。
4、'x'與"x"的區別: 'x'表示一個整數, 字母x在極其字符集中對應的數值、"x"表示一個包含一個字符x 以及一個結束符'\0'。
5、const在聲明變量中起限制作用, 該限定變量的值不能被修改。