计算概论(A)/基础编程练习2(8题)/3:计算三角形面积

 1 #include<stdio.h>
 2 #include<math.h>
 3 int main() {
 4     // 声明三角形的三个顶点坐标和面积
 5     float x1, y1, x2, y2, x3, y3, s;
 6 
 7     // 输入坐标
 8     scanf("%f %f %f %f %f %f",&x1, &y1, &x2, &y2, &x3, &y3);
 9 
10     // 利用欧氏距离计算边长
11     float a, b, c;
12     a=sqrt(1.0*(x2-x1)*(x2-x1)+1.0*(y2-y1)*(y2-y1));
13     b=sqrt(1.0*(x1-x3)*(x1-x3)+1.0*(y1-y3)*(y1-y3));
14     c=sqrt(1.0*(x3-x2)*(x3-x2)+1.0*(y3-y2)*(y3-y2));
15 
16     // 利用海伦公式计算三角形面积
17     float p=(a+b+c)/2.0;
18     s=sqrt(1.0*p*(p-a)*(p-b)*(p-c));
19 
20     printf("%.2f\n", s);
21     return 0;
22 }
23 /*
24 pkuic_6172.c
25 计算概论(A)/基础编程练习2(8题)/3:计算三角形面积
26 http://pkuic.openjudge.cn/base2/3/
27 3:计算三角形面积
28 查看 提交 统计 提问
29 总时间限制: 1000ms 内存限制: 65536kB
30 描述
31     平面上有一个三角形,它的三个顶点坐标分别为(x1, y1), (x2, y2), (x3, y3),那么请问这个三角形的面积是多少。
32 输入
33     输入仅一行,包括6个单精度浮点数,分别对应x1, y1, x2, y2, x3, y3。
34 输出
35     输出也是一行,输出三角形的面积,精确到小数点后两位。
36 样例输入
37     0 0 4 0 0 3
38 样例输出
39     6.00
40 提示
41     海伦公式
42 */

 

posted @ 2017-03-04 20:14  valuestack  阅读(602)  评论(0)    收藏  举报