zl程序教程

您现在的位置是:首页 >  大数据

当前栏目

c语言计算三角形面积代码

计算语言代码 三角形 面积
2023-06-13 09:15:12 时间

复制代码代码如下:


//面积公式s=(a+b+c)/2  area=sqrt(s*(s-a)*(s-b)*(s-c));
//小作业求三角形的面积

intcheck(doublea);
intcheck2(doublea,doubleb,doublec);

#include<stdio.h>
#include<math.h>
intmain(void)
{
   doublearea=0;
   doubles;
   doublea,b,c;
   printf("请输入三角形的三边的长(abc):");
   scanf("%lf%lf%lf",&a,&b,&c);
   if(check(a)==1&&check(b)==1&&check(c)==1)
   {
       if(check2(a,b,c)==0)
       {
           printf("您输入的不是三角形.请重新输入\n\r");
           return0;
       }
       elseif(check2(a,b,c)==1)
       {
           s=(a+b+c)/2;
           area=sqrt(s*(s-a)*(s-b)*(s-c));
           printf("该三角形的面积是:%g\n\r",area);
       }
   }
   else
       printf("输入有误,请重新输入.\n\r");
   return0;
}

 

//判断输入的数据是否有效
intcheck(doublea)
{
   if(a>0)
       return1;
   else
       return0;
}

//判断三角形是否有效

intcheck2(doublea,doubleb,doublec)
{
   if(((a+b)<=c)|((a+c)<=b)|((c+b)<=a))
       return0;
   if(abs(a-b)>=c|abs(a-c)>=a|abs(c-b)>=a)
       return0;
   else
       return1;
}

 想了下,area不会是垃圾值啊.所以不用写那么多行声明变量诶.....

修改了一些

复制代码代码如下:


//面积公式s=(a+b+c)/2  area=sqrt(s*(s-a)*(s-b)*(s-c));
//小作业求三角形的面积

intcheck(doublea);
intcheck2(doublea,doubleb,doublec);

#include<stdio.h>
#include<math.h>
intmain(void)
{
   doublearea,s,a,b,c;
   printf("请输入三角形的三边的长(abc):");
   scanf("%lf%lf%lf",&a,&b,&c);
   if(check(a)==1&&check(b)==1&&check(c)==1)
   {
       if(check2(a,b,c)==0)
       {
           printf("您输入的不是三角形.请重新输入\n\r");
           return0;
       }
       elseif(check2(a,b,c)==1)
       {
           s=(a+b+c)/2;
           area=sqrt(s*(s-a)*(s-b)*(s-c));
           printf("该三角形的面积是:%g\n\r",area);
       }
   }
   else
       printf("输入有误,请重新输入.\n\r");
   return0;
}

 

//判断输入的数据是否有效
intcheck(doublea)
{
   if(a>0)
       return1;
   else
       return0;
}

//判断三角形是否有效

intcheck2(doublea,doubleb,doublec)
{
   if(((a+b)<=c)|((a+c)<=b)|((c+b)<=a))
       return0;
   if(abs(a-b)>=c|abs(a-c)>=a|abs(c-b)>=a)
       return0;
   else
       return1;
}