已知一个三角形中三条边的长度分别为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的值由键盘输入,并确保任意两边的长度之和大于等于第三条边。 展开
百度网友6dfcee6
2011-03-16 · TA获得超过1万个赞
知道小有建树答主
回答量:866
采纳率:0%
帮助的人:1173万
展开全部
#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
追问
如果你是网上找的,那我没话说!
如果你是自己写的,如果你懂的话,请解释一下。
谢谢!
yuezhyun
2011-03-16 · TA获得超过6905个赞
知道大有可为答主
回答量:2097
采纳率:100%
帮助的人:894万
展开全部
开始——>输入a,b,c ----->判断a+b>c吗?------> 否 就输出 三角形不存在 ;是就再判断|a-b|<c吗? 否就输出三角形不存在;是就计算s=(a+b+c)/2 , 再计算M=sqr(s*(s-a)*(s-b)(s-c) ,然后输出M ——>皆结束
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1352664965
2011-03-20
知道答主
回答量:20
采纳率:0%
帮助的人:0
展开全部
kjuhky
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jicode
推荐于2017-11-24 · 超过10用户采纳过TA的回答
知道答主
回答量:35
采纳率:0%
帮助的人:0
展开全部
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的话,请留言
更多追问追答
追问
我要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 ("请检查输入的三条边长是否能够构成三角形");
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式