十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
你這個(gè)程序 開方上是沒問題的 而是計(jì)算s有問題

創(chuàng)新互聯(lián)建站堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的靜寧網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
應(yīng)該是
#includestdio.h
#includemath.h
void?main()
{
float?a,b,c,s,m;
scanf("%f%f%f",a,b,c);
s=1.0/2.0*(a+b+c);
m=sqrt(s*(s-a)*(s-b)*(s-c));
printf("%.2f\n",m);
}
可以調(diào)用頭文件math.h中的sqrt()函數(shù)。
參考代碼如下:
對(duì)36開根號(hào):
#includestdio.h
#includemath.h
int main ()
{
float a=36.0;
a=sqrt(a);
printf("%.2f\n",a);
return 0;
}
拓展資料
C語言是一門通用計(jì)算機(jī)編程語言,廣泛應(yīng)用于底層開發(fā)。C語言的設(shè)計(jì)目標(biāo)是提供一種能以簡(jiǎn)易的方式編譯、處理低級(jí)存儲(chǔ)器、產(chǎn)生少量的機(jī)器碼以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的編程語言。
盡管C語言提供了許多低級(jí)處理的功能,但仍然保持著良好跨平臺(tái)的特性,以一個(gè)標(biāo)準(zhǔn)規(guī)格寫出的C語言程序可在許多電腦平臺(tái)上進(jìn)行編譯,甚至包含一些嵌入式處理器(單片機(jī)或稱MCU)以及超級(jí)電腦等作業(yè)平臺(tái)。
二十世紀(jì)八十年代,為了避免各開發(fā)廠商用的C語言語法產(chǎn)生差異,由美國國家標(biāo)準(zhǔn)局為C語言制定了一套完整的美國國家標(biāo)準(zhǔn)語法,稱為ANSI C,作為C語言最初的標(biāo)準(zhǔn)。? 目前2011年12月8日,國際標(biāo)準(zhǔn)化組織(ISO)和國際電工委員會(huì)(IEC)發(fā)布的C11標(biāo)準(zhǔn)是C語言的第三個(gè)官方標(biāo)準(zhǔn),也是C語言的最新標(biāo)準(zhǔn),該標(biāo)準(zhǔn)更好的支持了漢字函數(shù)名和漢字標(biāo)識(shí)符,一定程度上實(shí)現(xiàn)了漢字編程。
C語言是一門面向過程的計(jì)算機(jī)編程語言,與C++,Java等面向?qū)ο蟮木幊陶Z言有所不同。
其編譯器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。
C語言中sqrt()意思是平方根函數(shù),計(jì)算一個(gè)非負(fù)實(shí)數(shù)的平方根。 在VC6.0中的math.h頭文件的函數(shù)原型為double sqrt(double number)。sqrt()函數(shù)的輸入?yún)?shù)不允許為負(fù)數(shù),若輸入賦值作為函數(shù)入?yún)ⅲ瑢⒌貌坏秸_的結(jié)果。因此在調(diào)用函數(shù)之前,應(yīng)檢查函數(shù)輸入?yún)?shù)。
擴(kuò)展資料:
sqrt()函數(shù)的輸入?yún)?shù)必須以double類型輸入,函數(shù)返回類型為double型,因此必須使用double型的變量來進(jìn)行接收返回的數(shù)值。當(dāng)輸入數(shù)據(jù)不是double型時(shí),應(yīng)使用強(qiáng)制類型轉(zhuǎn)換,將其轉(zhuǎn)換為double類型。
在函數(shù)接收引用的數(shù)值時(shí),應(yīng)該用? %lf?來表示,否則,將會(huì)在輸入或輸出時(shí)出現(xiàn)數(shù)據(jù)錯(cuò)誤,尤其是在數(shù)據(jù)輸入的時(shí)候,會(huì)直接導(dǎo)致數(shù)據(jù)出錯(cuò)。這也都主要是由于不同類型的數(shù)據(jù)存儲(chǔ)和讀取的方式不同導(dǎo)致的。
首先在 main()函數(shù) 上邊加個(gè)#include "math.h" 因?yàn)殚_根號(hào)屬于 數(shù)學(xué)函數(shù)里邊的函數(shù),要使用根號(hào)就要加上#inculde "math.h",\r\n然后在你要開根號(hào)的數(shù)的前邊加個(gè) sqrt,就可以了 \r\n例如\r\n#inculde "math.h"\r\nmain()\r\n{ float a,b;\r\n printf("please input a nuberm:");\r\n scanf("%f",a);\r\n b=sqrt(a);\r\n printf("%f\n",b);\r\n \r\n}這個(gè)程序就是 讓 用戶輸入個(gè)數(shù)字,然后輸出原數(shù)值的開根號(hào)后的結(jié)果
用math.h里封裝好的函數(shù),具體如下:
求平方根:double sqrt(double x)
例:
#include math.h
#include stdio.h
int main(void)
{
double x = 4.0, result;
result = sqrt(x);
printf("The square root of %lf is %lf
", x, result);
return 0;
}
擴(kuò)展資料:
關(guān)于c語言的基本運(yùn)算
1.加法運(yùn)算符 +
int a = 10;
int b = a + 5;
在第3行利用加法運(yùn)算符 + 進(jìn)行了加法運(yùn)算,再將和賦值給了變量b,最終變量b的值是15
2.減法運(yùn)算符 或 負(fù)值運(yùn)算符?-
int b = 10 - 5;
int a = -10;
1 在第1行利用減法運(yùn)算符 - 進(jìn)行了減法運(yùn)算,再將差賦值給了變量b,最終變量b的值是5
2 在第3行中,這個(gè) - 并不是什么減法運(yùn)算符,而算是一個(gè)負(fù)值運(yùn)算符,-10代表的是負(fù)十
3.乘法運(yùn)算符?*
int b = 10 * 5;
注意:乘法運(yùn)算符并不是x或者X,而是星號(hào)*。變量b最終的值是50。
4.除法運(yùn)算符?/
double a = 10.0 / 4;
double b = 10 / 4;
printf("a=%f, b=%f \n", a, b);
注意:除法運(yùn)算符并不是÷,而是一個(gè)正斜杠 /
1 第1行中的10.0是浮點(diǎn)型,4是整型,因此會(huì)將4自動(dòng)類型提升為浮點(diǎn)型后再進(jìn)行運(yùn)算,最后變量b的值是2.5
2 第2行中的10和4都是整型,計(jì)算機(jī)中的運(yùn)算有個(gè)原則:相同數(shù)據(jù)類型的值才能進(jìn)行運(yùn)算,而且運(yùn)算結(jié)果依然是同一種數(shù)據(jù)類型。因此,整數(shù)除于整數(shù),求出來的結(jié)果依然是整數(shù),會(huì)損失小數(shù)部分。最后變量b的值是2。
5.模運(yùn)算符或稱取余運(yùn)算符 %
注意:這個(gè)%并不是除號(hào)÷,它是一個(gè)取余運(yùn)算符,或者叫做模運(yùn)算符。取余的意思是,取得兩個(gè)整數(shù)相除之后的余數(shù)。比如,5除于2的余數(shù)是1,5除于3的余數(shù)是2。因此使用這個(gè)%有個(gè)原則:%兩側(cè)必須都為整數(shù)。
錯(cuò)誤的寫法:1 int a = 5.0 % 2;
編譯器會(huì)直接報(bào)錯(cuò),因?yàn)?.0并非整數(shù)。
首先在 main()函數(shù) 上邊加個(gè)#include "math.h" 因?yàn)殚_根號(hào)屬于 數(shù)學(xué)函數(shù)里邊的函數(shù),要使用根號(hào)就要加上#inculde "math.h",\r\n然后在你要開根號(hào)的數(shù)的前邊加個(gè) sqrt,就可以了 \r\n例如\r\n#inculde "math.h"\r\nmain()\r\n{ float a,b;\r\n printf("please input a nuberm:");\r\n scanf("%f",a);\r\n b=sqrt(a);\r\n printf("%f\n",b);\r\n \r\n}這個(gè)程序就是 讓 用戶輸入個(gè)數(shù)字,然后輸出原數(shù)值的開根號(hào)后的結(jié)果