搜索
查看: 1491|回复: 5
打印 上一主题 下一主题

c语言初学,三角形判别,帮看下哪里错了,谢谢!

[复制链接]
跳转到指定楼层
楼主
发表于 2013-10-17 20:45:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
#include <stdio.h>
int main()
{
double a,b,c;
scanf("%lf%lf%lf",&a,&b,&c);
if (a>0&&b>0&&c>0&&a+b>c&&a+c>b&&b+c>a)
{
        if(a==b==c)
      printf("等边三角形");
          else if((a==b&&a*a+b*b==c*c)||(a==c&&a*a+c*c==b*b)||(b==c&&b*b+c*c==a*a))
                printf("等腰直角三角形");
                        else if (a==b||b==c||a==c)
                                printf("等腰三角形");
                                        else if(a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a)
                                                printf("直角三角形");
                                                        else printf("一般三角形");

}
else printf("Error input!\n");

return 0;
}


沙发
发表于 2013-10-17 20:53:01 | 只看该作者
首先你每条语句的分号错了...(;;)应该用英文键盘的(;)
板凳
发表于 2013-10-17 23:43:50 | 只看该作者
浮点数不该运算后直接判断是不是相等
地板
发表于 2013-10-21 15:59:08 | 只看该作者
嗯嗯,楼上说的对!浮点数不可以直接判断,这虽说不上错误,但会导致编译失败,还有,分号要用英文的,你的分号全都是中文``````
5#
发表于 2013-10-29 10:59:24 | 只看该作者
这样会好点
6#
发表于 2013-10-29 10:59:46 | 只看该作者
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4. void main()
  5. {
  6.         float a,b,c;
  7.     float s,area;
  8.     printf("这是一个三角形判断机,欢迎您使用!\n");
  9.     printf("请输入三角形的第一条边:");
  10.     scanf("%f",&a);
  11.     printf("请输入三角形的第二条边:");
  12.     scanf("%f",&b);
  13.     printf("请输入三角形的第三条边:");
  14.     scanf("%f",&c);
  15.     printf("--------------------------------\n");
  16.     if(a+b>c&&b+c>a&&a+c>b)
  17.     {
  18.                 s=(a+b+c)/2;
  19.         area=(float)sqrt(s*(s-a)*(s-b)*(s-c));
  20.         printf("此三角形的面积是:%f\n",area);
  21.         if(a==b&&a==c)
  22.                         printf("等边三角形\n");
  23.         else if(a==b||a==c||b==c)
  24.                         printf("等腰三角形\n");
  25.         else if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
  26.                         printf("直角三角形\n");
  27.         else
  28.                         printf("普通三角形\n");
  29.     }
  30.     else
  31.                 printf("不是三角形\n");
  32.         system("pause");
  33.         return 0;
  34. }
复制代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表