作业帮 > 数学 > 作业

已知一个三角形中三条边的长度分别为a,b和c,编写程序利用公式求出三角形的面积,其中S=(a+b+c)/2.要求边长a、

来源:学生作业帮 编辑:拍题作业网作业帮 分类:数学作业 时间:2024/05/03 09:21:49
已知一个三角形中三条边的长度分别为a,b和c,编写程序利用公式求出三角形的面积,其中S=(a+b+c)/2.要求边长a、b、c的值由键盘输入,并确保任意两边的长度之和大于等于第三条边.
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 ("请检查输入的三条边长是否能够构成三角形"); } }
再问: double A= Abs(a - b); scanf("%d,%d,%d",&a,&b,&c); printf 分别是什么意思?还有%d,&b是什么意思?能解释一下吗?谢谢!
再答: %d,表示输入的是整数,不好意思,应该是scanf("%f,%f,%f",&a,&b,&c); %f表示输入的是浮点型的数 &表示地址 这里scanf("%f,%f,%f",&a,&b,&c);表示输入三个浮点型的数,而这三个数分别为a,b,c的值 printf有打印显示的意思 printf ("请检查输入的三条边长是否能够构成三角形"); 黑屏上会显示 请检查输入的三条边长是否能够构成三角形 double A= Abs(a - b); Abs表示绝对值 A= Abs(a - b);表示将a-b的绝对值赋给A 和表示函数库 使用这个就可以应用main函数了, 使用可以使用Abs函数
再问: 恩,非常谢谢!你解释的很清楚。分给你了! 有个问题想问下,要定义整型和浮点型用int 和float、double不就 行了吗?为什么要用%d,%f呢?是因为语言不同吗? 你是学什么的,有问题请教你哈!
再答: 学地理信息的,编程知识有接触的,虽然不是很精通,一些基本的小程序还是没问题的 %d,%f在输入时用到的,定义时用int double float,其他语言中定义也一样的,只是输入不同
再问: 恩,谢谢!你QQ多少可以告诉我吗?
再答: 1668316452