c语言编程,求三角形面积
【问题描述】若已知三角形三个边的长度分别为a,b,c(并假设三个边长度的单位一致,在本编程题中忽略其单位),则可以利用公式:。。。。。求得三角形的面积,其中:s=(a+b...
【问题描述】
若已知三角形三个边的长度分别为a,b,c(并假设三个边长度的单位一致,在本编程题中忽略其单位),则可以利用公式:。。。。。
求得三角形的面积,其中:s=(a+b+c)/2。编程实现从控制台读入以整数表示的三个边的长度(假设输入的长度肯定可以形成三角形),然后利用上述公式计算面积并输出,结果小数点后保留3位有效数字。
【输入形式】
从控制台输入三个整数表示三角形三个边的长度,以空格分隔三个整数。
【输出形式】
向控制台输出求得的三角形的面积,小数点后保留三位有效数字。
【输入样例】
4 4 6
【输出样例】
7.937
【样例说明】
输入的三角形三个边的长度分别为4、4、6,利用上述计算公式可以求得三角形的面积为7.937,小数点后保留三位有效数字。
提示:可以使用求平方根的库函数,见教科书的附录B.4,使用前应包含头文件<math.h>。 展开
若已知三角形三个边的长度分别为a,b,c(并假设三个边长度的单位一致,在本编程题中忽略其单位),则可以利用公式:。。。。。
求得三角形的面积,其中:s=(a+b+c)/2。编程实现从控制台读入以整数表示的三个边的长度(假设输入的长度肯定可以形成三角形),然后利用上述公式计算面积并输出,结果小数点后保留3位有效数字。
【输入形式】
从控制台输入三个整数表示三角形三个边的长度,以空格分隔三个整数。
【输出形式】
向控制台输出求得的三角形的面积,小数点后保留三位有效数字。
【输入样例】
4 4 6
【输出样例】
7.937
【样例说明】
输入的三角形三个边的长度分别为4、4、6,利用上述计算公式可以求得三角形的面积为7.937,小数点后保留三位有效数字。
提示:可以使用求平方根的库函数,见教科书的附录B.4,使用前应包含头文件<math.h>。 展开
5个回答
展开全部
建议求三角形的面积前先判断下能不能构成三角形!
下面修改的程序如下:
#include"stdio.h"
#include"math.h"
main()
{
float a,b,c;
float s,temp;
printf("请依次输入三角形的三边:");
scanf("%f%f%f",&a,&b,&c);
if(((a+b)>c)&&((a+c)>b)&&((b+c)>a)&&((a-b)<c)&&((a-c)<b)&&((b-c)<a))
{
s=(a+b+c)/2;
temp=sqrt(s*(s-a)*(s-b)*(s-c));
printf("三角形的面积为:\t");
printf("%3.4f\n",temp);
}
else
printf("不能构建三角形!");
}
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
程序
#include <stdio.h>
#include <math.h>
void main()
{
int a,b,c;
double s;
printf("请输入三个边长,\n");
scanf("%d %d %d",&a,&b,&c);
s= (a+b+c)/2;
printf("%0.3lf\n",sqrt(s*(s-a)*(s-b)*(s-c)));
}
#include <stdio.h>
#include <math.h>
void main()
{
int a,b,c;
double s;
printf("请输入三个边长,\n");
scanf("%d %d %d",&a,&b,&c);
s= (a+b+c)/2;
printf("%0.3lf\n",sqrt(s*(s-a)*(s-b)*(s-c)));
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
S=sqrt(s*(s-a)*(s-b)*(s-c))
其中等号右边的s=(a+b+c)/2,
C程序:
/////////////////////////////////
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
void main()
{
float a,b,c,sh,s;
scanf("%f%f%f",&a,&b,&c);
sh=(a+b+c)/2;
if(a+b>c||a+c>b||b+c>a)
{
s=sqrt(sh*(sh-a)*(sh-b)*(sh-c));
printf("%.3f\n",s);
}
else
{
printf("不能构成三角形");
}
}
其中等号右边的s=(a+b+c)/2,
C程序:
/////////////////////////////////
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
void main()
{
float a,b,c,sh,s;
scanf("%f%f%f",&a,&b,&c);
sh=(a+b+c)/2;
if(a+b>c||a+c>b||b+c>a)
{
s=sqrt(sh*(sh-a)*(sh-b)*(sh-c));
printf("%.3f\n",s);
}
else
{
printf("不能构成三角形");
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
知道三边,利用海伦公式求面积。
#include <stdio.h>
#include <math.h>
int main()
{
double a, b, c, p;
scanf("%lf%lf%lf", &a, &b, &c);
p = (a+b+c)/2;
printf("%.3f", sqrt(p*(p-a)*(p-b)*(p-c))); //海伦公式,打印时%.3f保留小数点后三位
}
#include <stdio.h>
#include <math.h>
int main()
{
double a, b, c, p;
scanf("%lf%lf%lf", &a, &b, &c);
p = (a+b+c)/2;
printf("%.3f", sqrt(p*(p-a)*(p-b)*(p-c))); //海伦公式,打印时%.3f保留小数点后三位
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询