问题:
连续输入三角形的三条边,判断是什么三角形,并输出对应语句。
思路:
- 这里面三角形肯定三条边,输入三个数,且想实现一直输入,那么可以用while(scanf("%d %d %d",&a,&b,&c));来实现。
- scanf()输入函数,返回的是与格式字符想匹配的有效个数。如果我输入三个数字,回车,那么进入循环,scanf()函数,会读取对应格式的字符,直到遇见空白字符,停止读取如回车。
- 当scanf("%d",&a),我输入的a是非数字时,立马停止读取,且返回0(因为,非数字不是有效数据)。
- 然后做题吧开始。
- 先大类,三角形和不是三角形,用if实现。
- 之后再在三角形的情况中,判断时哪种三角形,从最简单的等边开始,否则为等腰,否则为其他。
代码如下:
#include <stdio.h>
int main()
{
//输入三个数
int a,b,c;
printf("输入三个数字,表示三角形的边,输入非数字,结束循环\n");
while(scanf("%d %d %d",&a,&b,&c)==3)//每次输入的时候判断,当输入的有效数量(为%d格式的,必须输入数字)等于3时ÿ