怎么用c語(yǔ)言中的sqrt函數(shù)求三角形面積?求大神指點(diǎn)?
網(wǎng)友解答: 根據(jù)題主的意思,使用C語(yǔ)言中的sqrt函數(shù)求三角形的面積,關(guān)鍵是已知條件是什么,并沒(méi)有說(shuō),已知條件不同,所求三角形的面積公式也不同。1)若是已知三角形的三條邊長(zhǎng)a、b、c,根
根據(jù)題主的意思,使用C語(yǔ)言中的sqrt函數(shù)求三角形的面積,關(guān)鍵是已知條件是什么,并沒(méi)有說(shuō),已知條件不同,所求三角形的面積公式也不同。
1)若是已知三角形的三條邊長(zhǎng)a、b、c,根據(jù)海倫公式可以求出三角形的面積,p=(a+b+c)/2,則三角形的面積:
sqrt函數(shù)為平方根函數(shù),所以S=sqrt[p(p-a)(p-b)p-c)]。
c語(yǔ)言編程,可以構(gòu)造一個(gè)求三角形面積的函數(shù)
double area(a,b,c)
{double a,b,c,p,s;
p=(a+b+c)/2;
s=sqrt( p*(p-a)*(p-b)*(p-c));
return s;
}
比如要求邊長(zhǎng)為3、4、5的三角形面積,只需運(yùn)行area(3,4,5)即可。
2)同理,若是已知其它條件,先根據(jù)數(shù)學(xué)知識(shí),通過(guò)已知條件轉(zhuǎn)化為求面積的公式,然后再轉(zhuǎn)換成C語(yǔ)言程序即可。
總之,對(duì)于計(jì)算方面的應(yīng)用,更多的是考察數(shù)學(xué)知識(shí),只要能運(yùn)用數(shù)學(xué)知識(shí)將所求的未知數(shù)轉(zhuǎn)化為已知數(shù)的表達(dá)式即可,然后通過(guò)C語(yǔ)言將表達(dá)式表示出來(lái),運(yùn)行結(jié)果即可,挺方便的。
以上是本人的理解,若是有什么疑問(wèn)的地方可以留言,想了解更多知識(shí),請(qǐng)關(guān)注本酷米號(hào),謝謝!
網(wǎng)友解答:#include<stdio.h
#include<math.h
void main()
{
double a, b, c, p, s;
printf("請(qǐng)輸入三角形的三邊長(zhǎng):");
scanf("%lf%lf%lf", &a, &b, &c);
p = (a+b+c)/2;
s = sqrt( p*(p-a)*(p-b)*(p-c));
printf("三角形面積%fn", s);
}