与白yu 2022-10-16 10:40 采纳率: 50%
浏览 25
已结题

下面这个编程有什么问题,哭了

#include<stdio.h>
#include<math.h>
int main()
{
float a,b,c,s,l;
int y;
scanf("%f,%f,%f",&a,&b,&c);
l=(a+b+c)/2.0;
if(a+b>c&&a+c>b&&b+c>a) printf("%f",s);
else do
scanf("%f,%f,%f",&a,&b,&c);
while(a+b>c&&a+c>b&&b+c>a);
if(aa+bb==cc||aa+cc==bb||cc+bb==aa) y=1;
else if(a==b==c) y=2;
else if(a==b||a==c||b==c) y=3;
else y=4;
switch(y)
{
case'1':{if(a
a+bb==cc) s=1.0/2ab;
if(aa+cc==bb) s=1.0/2ac;
if(c
c+bb==aa) s=1.0/2bc;
case'2':s=sqrt(3)/4.0aa;break;
case'3':s=sqrt{l*(l-a)(l-b)(l-c)};
case'4':s=sqrt{l*(l-a)(l-b)(l-c)};
if(y==1) printf("直角三角形");
if(y==2) printf("等边三角形");
if(y==3) printf("等腰三角形");
return 0;
}

  • 写回答

1条回答 默认 最新

  • lzl2040 人工智能领域新星创作者 2022-10-16 10:52
    关注

    有些花括号都没打

    #include<stdio.h>
    #include<math.h>
    int main()
    {
        float a,b,c,s,l;
        float eps = 1e-8;
        int y;
        scanf("%f,%f,%f",&a,&b,&c);
        l=(a+b+c)/2.0;
        if(a+b>c&&a+c>b&&b+c>a) 
            printf("%f",s);
        else
        {
            do{
                scanf("%f,%f,%f",&a,&b,&c);
            }while(a+b>c&&a+c>b&&b+c>a);
        }
        //printf("%f %f %f\n",abs(a*a+b*b-c*c),abs(a*a+c*c-b*b),abs(c*c+b*b-a*a));
        if(abs(a*a+b*b-c*c) < eps||abs(a*a+c*c-b*b) < eps || abs(c*c+b*b-a*a) < eps) {
            y=1;
            //printf("!1");
        }
        else if(a == b && b == c) 
            y=2;
        else if(a==b||a==c||b==c) 
            y=3;
        else 
            y=4;
        switch(y)
        {
            case 1:
                if(a*a+b*b==c*c) 
                    s=1.0/2*a*b;
                if(a*a+c*c==b*b) 
                    s=1.0/2*a*c;
                if(c*c+b*b==a*a) 
                    s=1.0/2*b*c;
                break; 
            case 2:
                s=sqrt(3)/4.0*a*a;
                break;
            case 3:
                s=sqrt(l*(l-a)*(l-b)*(l-c));
            case 4:
                s=sqrt(l*(l-a)*(l-b)*(l-c));
        }
        if(y==1) 
            printf("直角三角形");
        if(y==2) 
            printf("等边三角形");
        if(y==3) 
            printf("等腰三角形");
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 11月1日
  • 已采纳回答 10月24日
  • 创建了问题 10月16日

悬赏问题

  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图