已知一个三角形中三条边的长度分别为a,b和c,编写程序利用公式求出三角形的面积,其中S=(a+b+c)/2。要求
已知一个三角形中三条边的长度分别为a,b和c,编写程序利用公式求出三角形的面积,其中S=(a+b+c)/2。要求边长a、b、c的值由键盘输入,并确保任意两边的长度之和大于...
已知一个三角形中三条边的长度分别为a,b和c,编写程序利用公式求出三角形的面积,其中S=(a+b+c)/2。要求边长a、b、c的值由键盘输入,并确保任意两边的长度之和大于等于第三条边。
展开
4个回答
展开全部
#include <stdio.h>
#include <math.h>
int is_triangle(int,int,int);
int main()
{
int a=0,b=0,c=0;
float area;
int s;
printf("请输入三角形三条边长:\n");
scanf("%d,%d,%d",&a,&b,&c);
while (!is_triangle(a,b,c))
{
printf("您输入的三条边长不能构成三角形,请重新输入三角形三条边长:\n");
scanf("%d,%d,%d",&a,&b,&c);
}
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("三角形的面积是:\n%f\n",area);
return 0;
}
int is_triangle(int a,int b,int c)
{
if ((a+b)>c && (a+c)>b && (b+c)>a)
{
return 1;
}
else
return 0;
}
注意输入三条边长之间加半角逗号,如:3,4,5
#include <math.h>
int is_triangle(int,int,int);
int main()
{
int a=0,b=0,c=0;
float area;
int s;
printf("请输入三角形三条边长:\n");
scanf("%d,%d,%d",&a,&b,&c);
while (!is_triangle(a,b,c))
{
printf("您输入的三条边长不能构成三角形,请重新输入三角形三条边长:\n");
scanf("%d,%d,%d",&a,&b,&c);
}
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("三角形的面积是:\n%f\n",area);
return 0;
}
int is_triangle(int a,int b,int c)
{
if ((a+b)>c && (a+c)>b && (b+c)>a)
{
return 1;
}
else
return 0;
}
注意输入三条边长之间加半角逗号,如:3,4,5
追问
如果你是网上找的,那我没话说!
如果你是自己写的,如果你懂的话,请解释一下。
谢谢!
展开全部
开始——>输入a,b,c ----->判断a+b>c吗?------> 否 就输出 三角形不存在 ;是就再判断|a-b|<c吗? 否就输出三角形不存在;是就计算s=(a+b+c)/2 , 再计算M=sqr(s*(s-a)*(s-b)(s-c) ,然后输出M ——>皆结束
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _1
{
class Program
{
static void Main(string[] args)
{
double a = Convert.ToDouble(Console.ReadLine());
double b = Convert.ToDouble(Console.ReadLine());
double c = Convert.ToDouble(Console.ReadLine());
double A=System.Math.Abs(a - b);
double B = System.Math.Abs(a - c);
double C = System.Math.Abs(b - c);
if (a + b > c && a + c > b && b + c > a && A < c && B < b && C < a)
{
double s = 1.0 / 2 * (a + b + c);
Console.WriteLine(s);
}
else
{
Console.WriteLine("请检查输入的三条边长是否能够构成三角形");
}
Console.ReadLine();
}
}
}
这是在C#中写的,如果你要C的话,请留言
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _1
{
class Program
{
static void Main(string[] args)
{
double a = Convert.ToDouble(Console.ReadLine());
double b = Convert.ToDouble(Console.ReadLine());
double c = Convert.ToDouble(Console.ReadLine());
double A=System.Math.Abs(a - b);
double B = System.Math.Abs(a - c);
double C = System.Math.Abs(b - c);
if (a + b > c && a + c > b && b + c > a && A < c && B < b && C < a)
{
double s = 1.0 / 2 * (a + b + c);
Console.WriteLine(s);
}
else
{
Console.WriteLine("请检查输入的三条边长是否能够构成三角形");
}
Console.ReadLine();
}
}
}
这是在C#中写的,如果你要C的话,请留言
更多追问追答
追问
我要c++的。谢谢!
追答
#include
#include
void main()
{
double a,b,c;
printf("请输入三角形三条边长:\n");
scanf("%d,%d,%d",&a,&b,&c);
double A= Abs(a - b);
double B = Abs(a - c);
double C = Abs(b - c);
if (a + b > c && a + c > b && b + c > a && A < c && B < b && C < a)
{
double s = 1.0 / 2 * (a + b + c);
printf("三角形面积为:\n",s) ;
}
else
{
printf ("请检查输入的三条边长是否能够构成三角形");
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询