请做c语言编程题,输入三角形三边,判断能否构成三角形,若构成则判断三角形是锐角,钝角还是直角三角形。

 我来答
玉晨枫
2012-04-15 · TA获得超过103个赞
知道小有建树答主
回答量:386
采纳率:0%
帮助的人:176万
展开全部
判断三角形应该是任意两边之和大于第三边;求出三边中的最大边,如果他的平方(A)等于剩余两边的平方和(B)就是直角··;如果A>B,是钝角,A<B就是锐角
geral
推荐于2017-09-05 · TA获得超过735个赞
知道小有建树答主
回答量:399
采纳率:0%
帮助的人:209万
展开全部
临时写的,没经过调试啊~
有不懂的就问我吧~
#include <stdio.h>

void main(){
int i;
float a[3]// 三角形三边长
float length[5];
int flag=0; //flag当成布尔值 如果flag=0就不能构成三角形,flag=1就表示可以,具体看下面程序
int flag2=0;// flag2是判断三角形是不是锐角三角形,=1时表示是锐角。
printf("please input the lengthes of the triangle: ");
scanf("%f,%f,%f",&a[0],&a[1],&a[2]);//记得输入的时候用半角逗号隔开
for(i=0;i<5;i++) length[i]=a[i%3];
for(i=0;i<3;i++){
if((length[i]<length[i+1]+length[i+2]) &&(length[i]>fabs(length[i+1]-length[i+2])))
{
flag=1;
}else{
flag=0;
break;//无法构成三角形,跳出循环
}

}

if(flag) printf("The triangle can be made by these 3 length");
else printf("NONONONO!!!!NO WAY!!!");

if(flag){
for(i=0;i<3;i++){
if(length[i]*length[i]+length[i+1]*length[i+1]<length[i+2]*length[i+2]){
printf("这是个钝角三角形");
flag2=0;
break;
}else if(length[i]*length[i]+length[i+1]*length[i+1]=length[i+2]*length[i+2]){
printf("这是个直角三角形");
flag2=0;
break;
}else{
flag2=1
}
}
}
//for 循环结束
if (flag2) printf("这是一个锐角三角形");

}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
I烟雨楼I
2012-04-17 · TA获得超过276个赞
知道小有建树答主
回答量:444
采纳率:75%
帮助的人:81.3万
展开全部
geral正解
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式