...用户输入的三个非零数据,判断这三个值是否能够成一个三角形的三条...
发布网友
发布时间:2023-12-29 13:24
我来回答
共4个回答
热心网友
时间:2024-07-28 06:26
#include<stdio.h>
void main()
{
float a,b,c;
printf("请输入三个非零数:");
scanf("%f,%f,%f",&a,&b,&c);//读取用户输入的数,并分别赋值给a,b,c
if((a<=0)||(b<=0)||(c<=0))
printf("输入数据有误!");//判断输入的数据是否非零
else //如果数据无误,进行下面判断
if((a+b>c)&&(a+c>b)&&(b+c>a))
printf("输入的三个数能够构成三角形!");//任意两边之和大于第三边就能够成三角形
else printf("输入的三个数不能构成三角形");//否则不能构成三角形
}
这个程序我在VC里试过了,能够实现你说的功能,你自己试试看看,希望对你有用,祝你好运!
热心网友
时间:2024-07-28 06:23
输入 a , b ,c;
if((a<=0)||(b<=0)||(c<=0))//三条边的长度不能小于等于0
不能构成三角形
if ((a+b<=c)||(a+c<=b)||(b+c<=a))//三角形的构成条件,任意两边的和不能小于等于第三遍
不能构成三角形
热心网友
时间:2024-07-28 06:27
我们先来讨论构成三角形的三条边的关系
设三边长为a,b,c
则任意边必须小于其他两边的和,任意边的长必须大于其他两边的差,OK,开始编程
#include<stdio.h>
#include<math.h>
main(){
int a,b,c,max,min;
printf("Enter 3 number:"); //输入三边数据
scanf("%d,%d,%d",&a,&b,&c);
if(a<=0||b<=0||c<=0)
printf("Error!");
else if((c>=a+b)||(b>=a+c)||(a>=b+c)) //任意两边和大于于第三边
printf("不能构成三角形\n");
else if(a<=abs(b-c)||b<=abs(a-c)||c<=abs(a-b)) //对差取绝对值,任意边小于差值
printf("不能构成三角形\n");
else
printf("能构成三角形\n")
return 0;
}
热心网友
时间:2024-07-28 06:26
三条线段能否构成三角形的条件是:两边之和大于第三边。
如果输入的三个数分别是:a,b,c
if ( (a + b > c ) || ( a + c > b ) || ( b + c > a ) )
return TRUE;