1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
| #include<stdio.h>
#include<stdlib.h>
#define N 2<<25
int a=N,b=N,c=N,d=N;
void shuru();
void panduan(int a1,int b1,int c1);
int main()
{
char se;
shuru();
panduan(a,b,c);
while(1)
{
printf("是否要继续 y or n :");
scanf("%c",&se);
if(se=='\n') scanf("%c",&se);
switch(se)
{
case 'y':
shuru();
panduan(a,b,c);
break;
case 'n':
return 0;
}
}
}
void shuru()
{
printf("Please enter 三角形三边 (a,b,c)\n");
while(!scanf("%d,%d,%d,%d",&a,&b,&c,&d)){//判断非数字字符
fflush(stdin);//清理缓存
a=N;b=N;c=N;d=N;
printf("输入错误、n");
}
fflush(stdin);
while((a<1||a>100)||(b<1||b>100)||(c<1||c>100)||d!=N)
{
if(b==N||c==N||d!=N) printf("输入错误、n");//边数为 1、2、4 条
else if(a==0||b==0||c==0) printf("边长不能为 0\n");
else if(a<0||b<0||c<0) printf("边长不能为负、n");
else printf("Please enter 1-100 之间的整数、n");
a=N;b=N;c=N;d=N;
while(!scanf("%d,%d,%d,%d",&a,&b,&c,&d)){//判断非数字字符
fflush(stdin);//清理缓存
a=N;b=N;c=N;d=N;
printf("输入错误、n");
}
fflush(stdin);
}
}
void panduan(int a1,int b1,int c1)
{
if(a1+b1>c1&&b1+c1>a1&&a1+c1>b1)
{
if(a1==b1&&a1==c1)
printf("等边三角形、n");
else if(a1==b1||a1==c1||b1==c1)
printf("等腰三角形、n");
else
printf("一般三角形、n");
}
else
printf("非三角形、n");
}
|