c语言输入三个实数 判断能否构成三角形,输入三个实数,编程判断他们是否能构成三角形...

满意答案

02ae427d08e371d7e90d5b995e828d6d.png

libeng66

2013.06.18

02ae427d08e371d7e90d5b995e828d6d.png

采纳率:51%    等级:13

已帮助:4714人

由于计算精度的限制,比较两个浮点数是否相等是没有意义的,因为可能有误差。所以这里要求输入的边长必须是整数。

#include

void main()

{

unsigned int a, b, c;

printf("Enter the edge length of the triangle:\n");

scanf("%d", &a);

scanf("%d", &b);

scanf("%d", &c);

if( (a >= b+c)

|| (b >= c+a)

|| (c >= a+b) )

{

printf("This is not a triangle.\n");

return;

}

if( (a == b) && (b == c) )

{

printf("This is an equilateral triangle.\n");

return;

}

if( (a == b) || (b == c) || (c == a) )

{

printf("This is an isoceles triangle.\n");

return;

}

if ( ((a^2 + b^2) == (c^2))

|| ((b^2 + c^2) == (a^2))

|| ((c^2 + a^2) == (b^2)) )

{

printf("This is a right-angled triangle.\n");

return;

}

printf("This is an ordinary triangle.\n");

return;

}

11分享举报