c语言编写程序:输入三角形的三条边,判断它们能否构成三角形,若能则指出何种三角形。

2020-06-27 教育 154阅读

&&、||运算符使用错误,代码为:

#include

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+c*c==b*b)||(b*b+c*c==a*a))

printf("直角三角形\n");

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

printf("等腰三角形\n"); } 

else 

printf("普通三角形\n");

return 0;

}

扩展资料:

&&、|| 和 !的优先级为:

! > && > ||

! 运算符比许多 C++ 运算符具有更高的优先级。因此,为了避免错误,应始终将其操作数括在括号中,除非打算将其应用于没有其他操作符的变量或简单表达式。例如,来看以下表达式:

! (x > 2)
! x > 2

第一个表达式将 !运算符应用于表达式 x>2,它是在问“x 是否不大于 2”,然而,第二个表达式是将 !运算符应用于到 x。它是在问“x 的逻辑是否大于 2”。

假设 x 被设置为 5,由于 5 是非零值,所以被认为是 true,而 !运算符会将其反转为 false,即为 0,然后,> 运算符将确定 0 是否大于 2。为了避免这种错误,始终使用括号是明智的。

参考资料:

百度百科-逻辑运算符

声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com