直接用兩個(gè)數(shù)(或變量)相乘就可以表示平方,比如x*x
在安居等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站制作、網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作按需定制制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,成都全網(wǎng)營銷,成都外貿(mào)網(wǎng)站制作,安居網(wǎng)站建設(shè)費(fèi)用合理。
不過如果,需要求m的n次方,就需要用到pow(x,y)乘方(包括開方)這個(gè)庫函數(shù)了,使用pow(x,y)這個(gè)庫函數(shù),需要math.h頭文件。
其中x和y都是雙精度浮點(diǎn)(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);
}
擴(kuò)展資料
C語言無參函數(shù)的定義:
dataType是返回值類型,它可以是C語言中的任意數(shù)據(jù)類型,例如int、float、char等。
functionName 是函數(shù)名,它是標(biāo)識(shí)符的一種,命名規(guī)則和標(biāo)識(shí)符相同。函數(shù)名后面的括號(hào)( )不能少。
body是函數(shù)體,它是函數(shù)需要執(zhí)行的代碼,是函數(shù)的主體部分。即使只有一個(gè)語句,函數(shù)體也要由{}包圍。
如果有返回值,在函數(shù)體中使用return語句返回。return出來的數(shù)據(jù)的類型要和dataType一樣。
頭文件:#include math.h
sqrt() 用來求給定值的平方根,其原型為:double sqrt(double x);double sqrt(double x)。
x 為要計(jì)算平方根的值。
如果 x 0,將會(huì)導(dǎo)致 domain error 錯(cuò)誤,并把全局變量 errno 的值為設(shè)置為 EDOM。
返回 x 平方根。注意,使用 GCC 編譯時(shí)請(qǐng)加入-lm。實(shí)例計(jì)算200 的平方根值。
例子:
#include math.hmain(){??double root;??root = sqrt(200);??printf("answer is %f\n", root);}
輸出結(jié)果:answer is 14.142136。
擴(kuò)展資料:
使用sqrt函數(shù)需要注意的事項(xiàng):
1、sqrt函數(shù)運(yùn)行的是結(jié)果是算術(shù)平方根,即不能運(yùn)算處負(fù)數(shù)值,也不能輸出虛數(shù)結(jié)果。如需要得到算術(shù)平方根中的負(fù)數(shù)值,則應(yīng)該在sqrt函數(shù)前添加負(fù)號(hào)。
2、sqrt函數(shù)的參數(shù)必須是非負(fù)數(shù)值,如果是負(fù)數(shù)值,則輸出會(huì)報(bào)錯(cuò),即數(shù)值無效;如果參數(shù)是未定義的非數(shù)字變量,則按回車后也會(huì)報(bào)錯(cuò),即變量名有誤。
3、sqrt函數(shù)的計(jì)算精度與C語言設(shè)置的精度有關(guān),可以通過設(shè)置更改精度。
若開平方,可以使用函數(shù)sqrt()完成,若開其他次方,可以借助函數(shù)pow()完成。
開平方示例:
#includemath.h//sqrt函數(shù)使用到的頭文件
#includestdio.h
int main(void)
{
double x=4.0,result;
result=sqrt(x);//對(duì)x開平方
printf("%g\n",result);
return 0;
}
//輸入結(jié)果:2
開三次方示例:
#includemath.h//pow函數(shù)使用的頭文件
#includestdio.h
int main(void)
{
double x=27.0,result;
result=pow(x, 1.0/3);//對(duì)x開三次方
printf("%g\n",result);
return 0;
}
//輸出結(jié)果:3
對(duì)于借助pow函數(shù)實(shí)現(xiàn)開方的可以借鑒開三次方示例代碼。
(1)函數(shù)頭文件:math.h;
(2)函數(shù)功能: 計(jì)算一個(gè)非負(fù)實(shí)數(shù)的平方根;
(3)函數(shù)原型:double sqrt(double);
(4)參數(shù)介紹:()中是double,返回值可能是double 也可能是int;
(5)函數(shù)應(yīng)用:sqrt系Square Root Calculations(平方根計(jì)算),通過這種運(yùn)算可以考驗(yàn)CPU的浮點(diǎn)能力。
C語言,是一種通用的、過程式的編程語言,廣泛用于系統(tǒng)與應(yīng)用軟件的開發(fā)。具有高效、靈活、功能豐富、表達(dá)力強(qiáng)和較高的移植性等特點(diǎn),在程序員中備受青睞。最近25年是使用最為廣泛的編程語言。
C語言是由UNIX的研制者丹尼斯·里奇(Dennis Ritchie)于1970年 由 肯·湯普遜(Ken Thompson)所研制出的B語言的基礎(chǔ)上發(fā)展和完善起來的。目前,C語言編譯器普遍存在于各種不同的操作系統(tǒng)中,例如UNIX、MS-DOS、Microsoft Windows及Linux等。C語言的設(shè)計(jì)影響了許多后來的編程語言,例如C++、Objective-C、Java、C#等。
一般的來說在進(jìn)行開方運(yùn)算時(shí),都會(huì)使用sqrt函數(shù)進(jìn)行開方運(yùn)算。使用sqrt時(shí)就需要引用頭文件math.h。(這里使用%d來輸出整數(shù)):
#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;
}
擴(kuò)展資料:
C語言編寫注意事項(xiàng):
1、變量名以字母和數(shù)字組成, (下劃線"_"被默認(rèn)為字符,以下劃線為首寫字母的為庫類變量名),變量常以小寫字母開頭.內(nèi)部變量命前31位有效,外部名至少前6位保持唯一性、大小寫在C語言中是區(qū)分的。
2、一個(gè)字符常量為一個(gè)整數(shù), 以''單引號(hào)括起。 '0' 為48, 與0沒有任何關(guān)系。
3、ANSI C語言的轉(zhuǎn)義符: \a 響鈴符; \b 回退符; \f 換頁符; \n 換行符; \r 回車符; \t 橫向制表符 \v 縱向制表符; \\ 反斜杠; \? 問號(hào); \' 單引號(hào);\" 雙引號(hào); \ooo 八進(jìn)制數(shù); \xhh 十六進(jìn)制數(shù);
'\0' 表示0, 即(null).通常以'\0'形式表示0 以強(qiáng)調(diào)某些表達(dá)是的字符屬性。
4、'x'與"x"的區(qū)別: 'x'表示一個(gè)整數(shù), 字母x在極其字符集中對(duì)應(yīng)的數(shù)值、"x"表示一個(gè)包含一個(gè)字符x 以及一個(gè)結(jié)束符'\0'。
5、const在聲明變量中起限制作用, 該限定變量的值不能被修改。
新聞名稱:c語言里面開方函數(shù) c語言里面開方函數(shù)是什么
本文鏈接:http://chinadenli.net/article18/dodsddp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、定制開發(fā)、網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、網(wǎng)站內(nèi)鏈、企業(yè)建站
聲明:本網(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í)需注明來源: 創(chuàng)新互聯(lián)