首先第一步,先定义好三个变量,方便进行赋值,这里我们先考虑整数型;
第二步,我们从题目信息看可以知道,代码需要具有判断输入的数是否符合构成三角形的条件。而判断三个数是否能够构成三角形,这个方法我们们初中应该就已经学过了,就是:任意两边之和大于第三条边,同时呢,任意两边之差需要小于第三边。OK,我们获取了这个信息之后,就可以用代码的形式表达出来
接下来,就是判断三角形形状了,这个过程呢用循环嵌套比较简洁高效一点。判断条件大家应该都会的噢!我也不过多赘述,直接看代码吧~
完整的代码在后面,这里呢,给大家分享几个小白白容易犯的错误(作者初学的时候踩过的坑)
首先,很多小伙伴们刚开始写代码的时候容易弄混淆中英文输入法,这虽然是个很简单的错误,但对于一些还没有掌握较多基本代码知识的小伙伴们来说,遇上这种问题,经常会摸不着头脑,代码明明看着基本一样,但为啥运行错误呢?所以这个问题还是得重视一下的~
其次呢,就是if else语句的使用,因为咱们的代码使用了较多的if循环,所以比较容易出错,最常见的错误就是一个 if 作用了多个else语句,基于基本语法知识我们可以知道,一个 if 只会对最近的 else 起作(同一个大括号呢也是如此)。那么,该怎样高效避免这种错误呢?其实也不难,我们得对基本得语法知识掌握牢固,再者就是我们要养成良好的代码风格,这样这个问题就基本不会出现在咱们身上了。
最后,还有判断语句里使用的逻辑运算符,这个咱们不能以传统的数学思维去解决问题,我i们得站在计算机的角度去编写代码。最常见的错误就是比较数值大小的操作符以及赋值和等于操作符的使用混淆,这里希望小伙伴能能够牢牢掌握好基本的语法知识,以后不会遇见这类问题。
#include <stdio.h>
int main()
{
int a, b, c;
while (scanf("%d %d %d", &a, &b, &c) != EOF)
if (((a + b) > c) && ((a - b) < c) && ((a + c) > b) && ((a - c) < b) && ((b + c) > a) && ((b - c) < a))
{
if (a == b && b == c && c == a)
printf("俺是等边三角形噢!\n");
else if
(a == b || a == c || b == c)
printf("俺是等腰三角形噢!\n");
else if
((a * a) + (b * b) == (c * c) || (a * a) + (c * c) == (b * b) || (c * c) + (b * b) == (a * a))
printf("暗示直角三角形噢!\n");
else
(printf("别看俺,俺就是个普通的三角形!\n"));
}
else
printf("别看俺,俺不是三角形!\n");
return 0;
}
既然看到这里啦,那就动动自己的小手去实践一下吧!
然后正值端午佳节,祝各位小伙伴们端午安康!!!