海伦公式c语言程序
❶ 用c语言写海伦公式
写海伦公式,我先后用了两个编译器,第一个是 visual studio 2019,第二个是Devc++
出现的问题,运行可以,但输入数据后运行,就error
第一个visual studio 2019 使用scanf 应为 scanf_s,Devc++则用scanf即可
第二个visual studio 2019 运行后 输入三个边长,
首先, 输入三个边长,必须是 3 4 5(中间要以空格隔开,逗号可不行,也会报error)
其次,要符合两条边之和大于第三边,否则 error;
#include<stdio.h>
#include<math.h>
#define p ((a+b+c)/2)
int main()
{
float a, b, c;
double area;
printf("Enter a b c:"); //我终于知道了,运行后 输入值之间要以空格隔开,不然就error了
scanf_s("%f%f%f", &a, &b, &c);
if (a >= b + c || b >= a + c || c >= a + b)
{
printf("error");
}
else
{
area = sqrt((double)(p * (p - a) * (p - b) * (p - c)));//sqrt 代表开方;
printf("a=%f,b=%f,c=%f,p=%f\n", a, b, c, p);
printf("area=%f\n", area);
}
return 0;
❷ 用海伦公式求三角形的面积的程序代码怎么写(用C语言)
该程序经修改,调试无误:
#include<stdio.h>
#include<math.h>
void main()
{
float a,b,c,s,area;
printf("请输入三角形的三边长:");
scanf("%f%f%f",&a,&b,&c);
s=1.0/2*(a+b+c);
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("a=%7.2f\nb=%7.2f\nc=%7.2f\ns=%7.2f\n",a,b,c,s);
printf("area=%7.2f\n",area);
}
❸ c语言编程 已知三角形三边a b c求面积,利用海伦公式实现
#include <stdio.h>
#include <math.h>
int main()
{
printf("请分别输入三角形边长,按回车:\n");
float a,b,c;
float s,area;
scanf("%f%f%f",&a,&b,&c);
if(a+b>c && a+c>b && b+c>a) //判断是否可以构成三角形。
{
s=(a+b+c)/2;//计算半周长
area=sqrt(s*(s-a)*(s-b)*(s-c));//套用海伦公式,计算面积
printf("这个三角形的面积为%lf\n", area);//输出结果
}
else printf("无法构成三角形\n");//输入不合法,提示。
return 0;
}
望采纳。
❹ C语言编写海伦公式
#include<stdio.h>
#include<math.h>
intmain()
{
doublea,b,c,s,area;
printf("Enterabc:");
//因为是double类型的数据,要用lf
while(scanf("%lf%lf%lf",&a,&b,&c)!=EOF)
{
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("area=%lf",area);
}
return0;
}
运行结果:

❺ C语言海伦公式
#include&lt;math.h&gt;#include&lt;stdio.h&gt;main(){floata,b,c,p,s;printf(&quot;changkuangaoshi?&quot;);scanf(&quot;%f%f%f&quot;,&amp;a,&amp;b,&amp;c);&#47;&#47;注意p=(a+b+c)&#47;2;s=sqrt(p*(p-a)*(p-b)*(p-c));printf(&quot;mianjishi:%f&quot;,s);}最后吐一下糟,这个英语水平,实在是,现在都有在线字典了啊
❻ c语言 关于海伦公式 求助
是刚学C吧?好象对变量的作用域、命名以及命令的使用还要再加强一下。
三个函数中都有错误:
一,看你的程序,似乎是想把变量s作为一个全局变量,在各个函数中使用,可该变量并没有定义。(那个主函数中的S是大写的,与此无关。)
二,变量名与函数名重合,如果s是全局变量的话,那么又与函数s(float,float,float)的命名重复,编译器无法确定同样的一个名字到底是函数还是变量,不能通过编译。同时,在函数area(float,float,float)中,里面有一个求面积的变量area也没有定义。
三,主函数中的语法逻辑错误。
程序的本意是先判断三条边是否符合构成三角形的条件,然后再计算面积。但:
1、这里其实应该用if语句,而不用循环;
2、即使是采用循环,从逻辑上也是错的:照你的程序,只要符合条件(两边之和大于第三边)就一直循环下去,除非不符合方退出,这个程序不能计算出正确的结果。
虽然下面是按尽量按程序的原样改动,但一般而言不提倡使用全局变量,因为使用多了,程序的可移植性会大受影响。
综上所述,程序和如下改动(在保证正确的情况下尽量不改变原程序):
#include<stdio.h>
#include<math.h>
float s;
void main()
{ float area(float a,float b,float c);
float a,b,c,S;
scanf("%f %f %f",&a,&b,&c);
if(a+b>c&&a+c>b);
S=area(a,b,c);}
}
float area(float a,float b,float c)
{
float ss(float a,float b,float c);
float area;
s=ss(a,b,c);
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("area=%f",area);
return area;
}
float ss(float a,float b,float c)
{
s=(a+b+c)*0.5;
return s;
}
❼ 【补全程序】C语言 利用海伦公示求三角形面积
#include<math.h>
#include<stdio.h>
float area(float a,float b,float c)
{
float s,p,area;
p=0.5*(a+b+c);
area=sqrt(p*(p-a)*(p-b)*(p-c));
/*根据海伦公式求三角形面积*/
return(area);
}
main()
{
float x,y,z,ts;
scanf("%f %f %f",&x,&y,&z);/*键盘输入三角形的3条边*/
if(x+y>z&&x+z>y&&z+y>x)/*判断是否构成三角形*/
{ts=area(x,y,z);/*调用求三角形面积函数*/
printf("area=%f\n",ts);}
else printf("data error!");while(1);
}
❽ C++ 编程 关于用海伦公式计算三角形面积的一个程序
程序代码如下:
{
#包括< stdio, h >
h#包括< math.h >
Intmain()
{
Printf(“请输入三角形分别为边长和按下回车:\n”);
浮动a,b,c;
浮动,区域;
扫描文件(“% f % f % f”,& a & b, & c);
如果(a+b>c && a+c>b && b+c>a) //判断三角形是否可以形成。
{
S=(a+b+c)/2;//计算半个圆周
面积=SQRT(s*(s-a)*(s-b)*(s-c));//应用海伦的公式来计算面积
Printf(“这个三角形的面积是%lf\n”,面积);//输出结果
}
否则printf("不能形成三角\n");//非法输入,提示。
返回0;
}

(8)海伦公式c语言程序扩展阅读:
海伦的公式
在公式中,a,b,c是三角形三条边的长度,p是三角形的半圆,S是三角形的面积。
据传说,这个公式最早是由古希腊数学家阿基米德得到的,因为这个公式最早出现在海伦的着作《大地测量学》中,所以被称为海伦公式。
1247年,宋代数学家秦九超独立提出了“三重斜四边形”。虽然它在形式上与海伦的公式不同,但它完全等价于海伦的公式。它填补了中国数学史上的一个空白,从中我们可以看出古代中国的数学水平很高。
海伦公式提出了三角形和多边形面积计算提供了一种新的方法和思路,知道的三边长三角公式的情况下高使用海伦和我不知道可以更快更容易找到,比如在土地面积的测量,不高的三角形,只需要测量两个点之间的距离,可以很容易地推导出解决方案。
