当前位置:首页 >> 数学 >>

计算三角形面积


计算任何三角形面积的程序
这个程序是我花了两天多时间编写的,能够计算 任何一个三角形的面积,并且能够判断不能构成三角 形和操作员操作失误的情况! 下面是程序源代码:

#include <stdio.h> #include <math.h> #define PI 3.14159265358979323846264 double qiqihaerdaxue() { float a,b,c,area,s; printf("请输入三角形的三条边 a,b,c\n"); scanf("%f%f%f",&a,&b,&c); if(a>0&&b>0&&c>0) { if((a+b)>c&&fabs(a-b)<c) { s=(a+b+c)/2; area=sqrt(s*(s-a)*(s-b)*(s-c)); printf(" 三 角 形 的 面 积 为 area=%f\n",area);

} else printf("a,b,c 不能构成三角形\n"); } else printf("对不起,三角形三边应为正数 \n"); } double jikong () { float a,b,c,s; printf("请按顺序输入三角形两边 a,b 及其 夹角(角度制)θ \n"); scanf("%f%f%f",&a,&b,&c); if(c<0||c>180) printf(" 三 角 形 内 角 必 须 在 θ >0 并 且 θ <180 度之间\n"); else { if(a>0&&b>0) { c=c*PI/180;

s=a*b*sin(c)/2; printf("三角形面积 s=%f\n",s); } printf("三角形边必须为正数\n"); } } double fcj1(double r1,double p1,double k1) { double yx1,cx1,sjxm,a1,m1; yx1=-2*r1*cos(k1);/*r=b p=c k=h*/ cx1=r1*r1-p1*p1; m1=yx1*yx1-4*cx1; if(m1<0.0001) m1=0; a1=(-yx1+sqrt(m1))/2; sjxm=a1*p1/2; printf("三角形面积 s=%f\n",sjxm); } double fcj2(double r2,double p2,double k2) { float yx2,cx2,u1,u2,m2,a21,a22,area1,area2;

yx2=-2*r2*cos(k2);/*r=b p=c k=h*/ cx2=r2*r2-p2*p2; m2=yx2*yx2-4*cx2; a21=(-yx2+sqrt(m2))/2; a22=(-yx2-sqrt(m2))/2; u1=(a21+r2+p2)/2; u2=(a22+r2+p2)/2; area1=sqrt(u1*(u1-a21)*(u1-r2)*(u1-p2)); area2=sqrt(u2*(u2-a22)*(u2-r2)*(u2-p2)); printf(" 三 角 形 面 积 s1=%f\ts2==%f\n",area1,area2); } float fcj3(float r3,float p3,float k3) { float yx3,cx3,u3,m3,a31,area3; yx3=-2*r3*cos(k3);/*r=b p=c k=h*/ cx3=r3*r3-p3*p3; m3=yx3*yx3-4*cx3; a31=(-yx3+sqrt(m3))/2; u3=(a31+r3+p3)/2; area3=sqrt(u3*(u3-a31)*(u3-r3)*(u3-p3));

printf("三角形面积 s=%f\n",area3); } double dianqi() { float a,b,c,h,s,yx,cx,m,kw; printf("请输入角所对的边 c\n"); scanf("%f",&c); printf("请输入另一边 b\n"); scanf("%f",&b); printf("请输入角θ (角度制)\n"); scanf("%f",&h); if(h>0&&h<180) { h=h*PI/180; kw=b*sin(h); if(b>0&&c>0) { if(fabs(c-kw)<0.0001) c=kw; if(c==kw) { fcj1(b,c,h);

} else { if(c<kw) { printf(" 所 给 值 不 能 构 成 三 角 形 \n"); } else { if(c>kw&&c<b) { fcj2(b,c,h); } else { fcj3(b,c,h); } }

} } else printf("三角形边必须为正数\n"); } else printf("三角形内角必须在θ >0 并且θ <180 度之间\n"); } double xueyuan () { float a,h; double s; printf("请依次输入三角形的一条边 a 和此 边上的高 h\n"); scanf("%f%f",&a,&h); if(a>0&&h>0) { s=a*h/2; printf("三角形面积 s=%f\n",s); }

else printf("三角形底和高必须为正数\n"); } gongcheng() { float ah,bh,ch,mh,jk; double s; printf("请入三角形的边 a\n"); scanf("%f",&ah); printf("请输入边所对的角(角度制)α \n"); scanf("%f",&bh); printf("请输入另一个角(角度制)β \n"); scanf("%f",&ch); if(ch+bh>180) { printf("三角形内角和不能大于 180 度 \n"); } else { if(ch<0||bh<0)

{ printf("三角形内角必须大于零\n"); } else { if(ah<0) { printf("三角形边必须为正数\n"); } else { mh=(180-ch-bh)*PI/180; bh=bh*PI/180; ch=ch*PI/180; s=(ah*ah*sin(ch)*sin(mh))/(2*sin(bh)); printf("三角形的面积 s=%f\n",s); } } } }

main() { int g; printf("1. 已知三边求三角形面积请输入 1\n"); printf("2.已知两边及其夹角求三角形面积 请输入 2\n"); printf("3.已知两边及其 1 对角求三角形面 积请输入 3\n"); printf("4.已知底和高求三角形面积请输入 4\n"); printf("5.已知两角和一条边求三角形面积 请输入 5\n"); printf("请选择:"); scanf("%d",&g); switch(g) { case 1: qiqihaerdaxue ();break; case 2:jikong();break; case 3: dianqi ();break; case 4:xueyuan();break; case 5: gongcheng ();break;

default:printf("选择有误:\n"); } } /*下面有我的操作结果及操作时的注 意事项*/


赞助商链接
相关文章:
三角形面积计算公式的推导
三角形面积计算公式的推导 - 三角形面积计算公式的推导 徐灿宏 教学内容:人教版 9 册 三角形面积公式推导部分 教学目的: 1、 通过让学生主动探索三角形面积计算...
三角形面积的计算3
三角形面积计算3 - 《三角形面积计算》 教案 3 课题:三角形面积计算 教学内容:小学九义教材第九册 75 页─79 页。 教学目的:1.利用多媒体演示使学生...
三角形面积计算教案
三角形面积计算教案_数学_小学教育_教育专区。三角形的面积计算教案 备课人:杨阳 教学内容 教学目标 备课时间: 人教版小学数学教材五年级上册第 91~92 页例 2 ...
《三角形的面积计算公式》教学设计
三角形面积计算公式》教学设计_五年级数学_数学_小学教育_教育专区。《三角形面积》 王雪教学目标 1、使学生在理解的基础上掌握三角形面积计算公式,能够...
四年级数学 三角形面积的计算
课 教学目标: 题 三角形面积计算 教学内容: 三角形面积(课本第 84—86 页) 1 通过操作、观察、理解三角形面积公式的推导过程,运用三角形面积计算 公式进行...
三角形面积的计算教案
三角形面积计算教案 - 《三角形面积计算》教案 台儿庄区林桥小学 教学内容: 学习目标: 1.能够利用转化的方法推导出三角形面积计算公式 2.能够利用三角形...
计算三角形的面积 C程序代码
计算三角形面积 C程序代码_计算机软件及应用_IT/计算机_专业资料。#include <stdio.h> #include <math.h> int main() { inta,b,c; floats,S,D; printf...
《三角形面积的计算》教案
三角形面积计算》教案 - 《三角形面积计算》教案 教材分析 本节内容是在学生充分认识了三角形的特征以及掌握了长方形、平行四边形面积计算的 基础上安排的...
三角形面积的计算
本节内容是在学生充分认识了三角形的特征 以及掌握了长方形、 平行四边形面积计算的基础上安排的。其推导方法与平行四 边形面积公式的推导方法有相通之处。同时本...
(北师大版)五年级数学三角形面积教学设计
三角形面积的计算 已经学习过平行四边形,结合平行四边形面积,推导三角形面积 【课时目标】 1.理解并掌握三角形面积的计算公式。能正确地计算三角形的面积。 2....
更多相关标签: