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

输入三角形的三条边(假设能构成三角形),输出三角形的面积。

#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");}}
看哈要的不
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-04-09
么么的程序没有判断输入的三边是否能构成三角形啊
在scanf之后应该加入如下程序段
if((a+b)<=c||(a+c)<=b||(b+c)<=a)
{
printf("not a trig!\n");
return;
}本回答被网友采纳
第2个回答  2013-10-29
#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)));
}
利用海伦公式来求
第3个回答  2013-10-29
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; }

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网