C语言编程:输入三角形的三条边(假设能构成三角形),输出三角形的面积。

作者&投稿:储翔 (若有异议请与网页底部的电邮联系)
C语言:编写程序,输入一个三角形的三条边,若能构成一个三角形,则输出相应提示信息并计算三角形面积。~

#include #include #include /* 海伦公式/秦九韶三斜求积 *//* 已知三角形三边长,返回三角形面积 */float heron (float a, float b, float c) {float A, s; /* A: 面积; s: 半周长 */s = (a+b+c) / 2;A = sqrt (s * (s-a) * (s-b) * (s-c));return A;}/* 三角形三边长判定 *//* 任意两边大于第三边,可构成三角形,返回1,否则返回0 */int edge (float a, float b, float c) {return (a+b>c && a+c>b && b+c>a);}int main (void) {float a, b, c; /* 三角形三边长 */printf ("输入三角形三边长:");scanf ("%f%f%f", &a, &b, &c);putchar ('
');if (edge (a, b, c)) /* 任意两边和大于第三边 */printf ("三角形面积:%.2f
", heron (a, b, c));elseprintf ("三边长不能构成三角形!
");getch (); /*屏幕暂留*/return 0;}

一、程序分析
三角形面积海伦公式:√[ p ( p - a ) ( p - b ) ( p - c ) ] 。其中 p = (a + b + c) / 2 。a、b、c分别是三角形的三边长。
二、根据三角形面积计算公式用if语句编写程序如下:
#include "stdio.h"
#include "math.h"
int main(void)
{
float a = 0, b = 0, c = 0, p = 0;
float area = 0;
printf("Please input three sides of triangle:");
scanf_s("%f %f %f", &a, &b, &c);
if((a + b) > c && (a + c) > b && (b + c) > a)
{
p = (a + b + c) / 2;
area = sqrt(p * (p - a) * (p - b) * (p - c));
}
else
printf("Triangle does not exist!
");
printf("The area of triangle is:%f
", area);
return 0;

扩展资料:
还可以使用switch语句计算三角形的面积,编写程序如下
#include "stdio.h"
#include "math.h"
int main(void)
{
float a = 0, b = 0, c = 0;
float p = 0;
printf("Please input three sides of triangle:");
scanf_s("%f %f %f", &a, &b, &c);
switch (a + b > c && a + c > b && b + c > a)
{
case 0:printf("Triangle does not exist!
"); break;
case 1:
p = (a + b + c)*0.5;
printf("The area of triangle is:%f
", sqrt(p * (p - a) * (p - b) * (p - c)));
break;
}
return 0;
}
参考资料:百度百科-switch
参考资料:百度百科-结束条件语句

#include<stdio.h>
#include<math.h>
main()
{
float a,b,c,s,area;
printf("请输入a,b,c,的值:\n");
scanf("%f,%f,%f",&a,&b,&c);
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
if(a+b>c&&a+c>b&&b+c>a)
{if(abs(a-b)<c&&abs(a-c)<b&&abs(b-c)<a)<br/> {if(a==b||a==c||b==c)<br/> {printf("这是一个等腰三角形!\n");<br/> printf("这个三角形面积:%f\n",area);}
else {printf("不是等腰三角形!\n");<br/> printf("这个三角形面积%f\n",area);}}
else {printf("不能构成三角形,三边这差不行:!\n");}}
else {printf("不能构成三角形,三边之和不行!\n");}}
看哈要的不

么么的程序没有判断输入的三边是否能构成三角形啊
在scanf之后应该加入如下程序段
if((a+b)<=c||(a+c)<=b||(b+c)<=a)
{
printf("not a trig!\n");
return;
}

#include <stdio.h>
#include <math.h>
void main()
{
double a,b,c,p;
scanf("%f %f %f",&a,&b,&c);
p = (a+b+c)/2;
printf("%f",sqrt(p*(p-a)*(p-b)*(p-c)));
}
利用海伦公式来求

int main(void) { int a[10][10],(*p)[10]=a,i,j; for(i=0;i<10;i++) { *(*(p+i)+0)=1; *(*(p+i)+i)=1; } for(i=2;i<10;i++) for(j=1;j<i;j++) *(*(p+i)+j)=*(*(p+i-1)+j-1)+*(*(p+i-1)+j); for(i=0;i<10;i++) { for(j=0;j<=i;j++) printf("%5d",*(*(p+i)+j)); printf("\n"); } getch(); return 0; }

C语言 输入三角形的3条边a,b,c,如果能构成一个三角形,则输出面积和周长...
答:海伦公式为 式中a,b,c分别为三角形三边长,p为半周长,S为三角形的面积。4、 输出周长和面积。二、参考代码:include<stdio.h>#include <math.h>int main(){ double a,b,c,C,S,p; scanf("%lf%lf%lf",&a,&b,&c);//输入三条边。 if(a+b>c && b+c>a && a+c>b...

c语言求三角形的面积
答:使用C语言计算三角形面积的示例代码:c#include<stdio.h>,#include<math.h>,int main(),double a,b,c,s,area。printf(请输入三角形的三条边的长度:\n);scanf(%lf%lf%lf,&a,&b,&c);s=(a+ b+ c)/2;area= sqrt(s*(s- a)*(s- b)*(s- c));printf(...

C语言编写程序,从键盘输入三角形三条边长(实数),计算并输出该三角形三...
答:include<stdio.h> intmain(){ folata,b,c,s,p;printf("请输入三角形的三边:");scanf("%f%f%f",&a,&b,&c);p=(a+b+c)/2;s=sqrt(p*(p-a)*(p-b)*(p-c));printf("三角形的面积为:%.1f",s);return0;}

c语言程序设计 输入三角形的3条边a,b,c,如果能构成三角形,输入面积cre...
答:include <stdio.h> include "math.h"int main(void){ printf("请输入三角形的三条边:\n");float a,b,c,s,sum = 0;scanf("%f,%f,%f",&a,&b,&c);if (a+b>c&&b+c>a&&a+c>b){ s = (a+b+c)/2;sum = sqrt(s*(s-a)*(s-b)*(s-c));printf("三角形面积是%.2f\...

c语言程序:从键盘输入三角形的三边,输出三角形的类型
答:second side!\nb=");scanf("%lf",&b);printf("Plese input third side!\nc=");scanf("%lf",&c);if (a+b<=c||a+c<=b||b+c<=a){printf("error:");return 0;} /*两边之和大于第三边*//*开始计算*/i=a*a+b*b;y=c*c;if(i>y)printf("钝角三角形\n");else if(...

在c语言中输入三角形的三边长啊a,b,c,求三角形的面积?
答:include<stdio.h> include<math.h> int main(){ float a, b, c, p, area;printf("请输入三角形的三边长\n");scanf("%f %f %f", &a, &b, &c);p = 1.0 / 2 * (a + b + c);if (a + b > c && b + c > a && a + c > b){ area = sqrt(p * (p - a) ...

c语言输入三边长判断三角形的方法?
答:c语言输入三边长判断三角形的方法如下:1、从键盘输入三角形的三条边。2、判断两边之和是否大于第三边。3、若条件成立则判断可构成三角形,计算其面积,并判断其类型;否则判断其不能构成三角形。4、在类型判断中首先判断其是否三边相等,条件成立则判断其为等边三角形;否则判断其是否有两边相等,条件...

c语言编写程序:输入三角形的三条边,判断它们能否构成三角形,若能则指出...
答:&&、||运算符使用错误,代码为:include <stdio.h> int main(){ float a,b,c;printf("请输入边长:\n");scanf("%f,%f,%f",&a,&b,&c);if(a+b>=c || a+c>=b || b+c>=a){ if (a==b&&a==c&&b==c)printf("等边三角形\n");else if ((a*a+b*b==c*c)||(a*a...

输入三角形的三条边a, b, c的值,用C语言判断这三条边能否构成三角形...
答:|| a == c){printf("该三角形为等腰三角形\n");}else if (a*a + b*b == c*c || a*a + c*c == b*b || b*b + c*c == a*a){printf("该三角形为直角三角形\n");}else{printf("该三角形为任意三角形\n");}}else{printf("不能构成三角形\n");}return 0;} ...

输入三角形的三条边a, b, c的值,用C语言判断这三条边能否构成三角形...
答:|| a == c){printf("该三角形为等腰三角形\n");}else if (a*a + b*b == c*c || a*a + c*c == b*b || b*b + c*c == a*a){printf("该三角形为直角三角形\n");}else{printf("该三角形为任意三角形\n");}}else{printf("不能构成三角形\n");}return 0;} ...