CCF NOI1002 三角形

问题链接CCF NOI1002 三角形




时间限制: 1000 ms  空间限制: 262144 KB

题目描述

  输入三角形三边长a,b,c(保证能构成三角形),输出三角形面积。

输入

  一行三个用一个空格隔开的实数a,b,c,表示三角形的三条边长。

输出

  输出三角形的面积,答案保留四位小数。

样例输入

3 4 5

样例输出

6.0000

数据范围限制

  1<=a,b,c<=10000



问题分析

  这是一个简单的计算问题,需要注意输出格式。

  需要事先知道三角形面积的计算公式。

程序说明

  常用的浮点数类型有float和double。日常生活和一般的工程问题中,从精度上考虑,使用float是足够的。

  程序中的2,是一种简单的写法,严格来说需要写成2.0不同类型之间的运算,类型被缺省转换。

要点详解

  • 人们常用的数的类型有整数和实数。而计算机语言中,相应的数据类型是整数类型和浮点数类型。
  • 数值非常大或者非常小,精度要求高时,变量应该考虑使用double类型
  • 整数与浮点数的运算结果是浮点数。 
  • 函数scanf()和函数pringf()是标准输入输出函数,用于格式化的输入与输出,其原型定义在stdio.h中。
  • 函数sqrt()是开平方根函数,其原型定义在math.h中。
  • math.h中定义了大量的数学计算函数。一般而言,进行科学计算时,要尽量使用数学库函数。



100分通过的C语言程序之一:

#include <stdio.h>
#include <math.h>

int main(void)
{
    float a, b, c, p;

    scanf("%f%f%f", &a, &b, &c);

    p= (a + b + c) / 2;

    printf("%.4f\n", sqrt(p * (p - a) * (p - b) * (p - c)));

    return 0;
}



posted on 2017-04-02 08:35  海岛Blog  阅读(491)  评论(0编辑  收藏  举报

导航