判断三角形问题,大神速来
#include<stdio.int main(void)
{
int a,b,c;
printf("input three numbers:");
scanf("%d%d%d",&a&b&c);
if((a+b<c)||(a+c<b)||(b+c<a))
printf("无法组成三角形");
else if(a==b&&b==c)
printf(等边三角形);
else if((a==b&&a!=c||(a==c&&a!=b)||(b==c&&b!=a))
printf("等腰三角形");
else if(a!=b&&a!=c&&b!=c)
printf("一般三角形");
else if(a*a+b*b==c*c)&&(a*a+c*c==b*b)&&(b*b+c*c==a*a)
printf("直角三角形");
}
错哪了,求详细解答。。。
1:<stdio.h.>2:&a,&b,&c 3: else if((a==b&&a!=c)||(a==c&&a!=b)||(b==c&&b!=a))4: elseif((a*a+b*b==c*c)&&(a*a+c*c==b*b)&&(b*b+c*c==a*a)) 5: return 0; else if(a*a+b*b==c*c)&&(a*a+c*c==b*b)&&(b*b+c*c==a*a)
printf("直角三角形");
}
少了一个括号 还有MAIN函数声明 int main() 貌似后面要加上 return 0; else if((a==b&&a!=c||(a==c&&a!=b)||(b==c&&b!=a))
printf("等腰三角形");
这也少个括号吧 等腰三角形和一般三角形可能是直角三角形,直角三角形需要另设一个if判断,不能在原有基础上else if #include<stdio.h>这个头文件应该是这样子吧! 我擦,你这代码怎么写的?这么多的错误,看的我都惊呆了!:sweat: #include<stdio.h>
void main()
{
int a,b,c;
printf("input three numbers:");
scanf("%d %d %d",&a,&b,&c);
if((a+b<c)||(a+c<b)||(b+c<a))
printf("无法组成三角形");
else if(a==b&&b==c)
printf("等边三角形");
else if((a==b&&a!=c)||(a==c&&a!=b)||(b==c&&b!=a))
printf("等腰三角形");
else if(a!=b&&a!=c&&b!=c)
printf("一般三角形");
else (a*a+b*b==c*c)&&(a*a+c*c==b*b)&&(b*b+c*c==a*a);
printf("直角三角形");
}
程序可以执行,但好像有问题的,自己看看条件,重新改过。 本帖最后由 ︶ㄣ痕迹の天涯 于 2013-11-30 20:48 编辑
话不多 发表于 2013-11-30 15:31 static/image/common/back.gif
1: 2:&a,&b,&c 3: else if((a==b&&a!=c)||(a==c&&a!=b)||(b==c&&b!=a))4: elseif((a*a+b*b==c*c ...
还是不行, void这个不需要返回值,第五个提醒错了。。。error C2018: unknown character '0xa3'
F:\qqq.cpp(8) : error C2018: unknown character '0xbb'
F:\qqq.cpp(9) : error C2143: syntax error : missing ';' before 'else'
F:\qqq.cpp(10) : error C2018: unknown character '0xb5'
F:\qqq.cpp(10) : error C2018: unknown character '0xc8'
F:\qqq.cpp(10) : error C2018: unknown character '0xb1'
F:\qqq.cpp(10) : error C2018: unknown character '0xdf'
F:\qqq.cpp(10) : error C2018: unknown character '0xc8'
F:\qqq.cpp(10) : error C2018: unknown character '0xfd'
F:\qqq.cpp(10) : error C2018: unknown character '0xbd'
F:\qqq.cpp(10) : error C2018: unknown character '0xc7'
F:\qqq.cpp(10) : error C2018: unknown character '0xd0'
F:\qqq.cpp(10) : error C2018: unknown character '0xce'
F:\qqq.cpp(10) : error C2660: 'printf' : function does not take 0 parameters
F:\qqq.cpp(11) : error C2059: syntax error : '&&'
F:\qqq.cpp(13) : error C2181: illegal else without matching if
Error executing cl.exe.
最后判断直角三角形的两个&&应该改成||吧
堕落天使D 发表于 2013-11-30 20:32 static/image/common/back.gif
最后判断直角三角形的两个&&应该改成||吧
是的,谢谢 #include<stdio.h>
void main()
{
int a,b,c;
printf("input three numbers:");
scanf("%d%d%d",&a,&b,&c);
if((a+b<c)||(a+c<b)||(b+c<a))
printf("无法组成三角形");
else if(a==b&&b==c)
printf("等边三角形");
else if((a==b&&a!=c)||(a==c&&a!=b)||(b==c&&b!=a))
printf("等腰三角形");
else if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
printf("直角三角形");
else if(a!=b&&a!=c&&b!=c)
printf("一般三角形");
}
经过对小毛病的修改,终于成功搞定了这个问题,谢谢大家的帮助:lol::lol::lol: o_O) 发表于 2013-11-30 19:33 static/image/common/back.gif
#include
void main()
。。。。。。。抄袭 (a*a+b*b==c*c)&&(a*a+c*c==b*b)&&(b*b+c*c==a*a)==、怎么能这样||这个吧 #include<stdio.h>
int main(void)
{
L:
{
int a,b,c;
printf("input three numbers:");
scanf("%d%d%d",&a,&b,&c);
if((a+b<c)||(a+c<b)||(b+c<a))
{
printf("无法组成三角形\n");
}
else if(a==b&&b==c)
{
printf("等边三角形\n");
}
else if((a==b&&a!=c)||(a==c&&a!=b)||(b==c&&b!=a))
{
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
{
printf("一般三角形\n");
}
}
goto L;
}
页:
[1]