经典重庆

标题: [原创]C语言_学习题套_第十二套 [打印本页]

作者: 文木四水    时间: 2007-2-1 13:29
标题: [原创]C语言_学习题套_第十二套
<p>劳动和社会保障部职业技能鉴定中心</p><p>软件工程师(ACCP)职业技能考核<br/>操作技能试卷<br/>(C)</p><p><br/>&nbsp;</p><p></p><p></p><p></p><p><br/>总分数;100<br/>姓名:考号:<br/>证件号码:<br/>注意:开始结束试卷必须教会,不交回试卷者成绩无效</p><p>&nbsp;</p><p></p><p></p><p>题目:三角形面积计算<br/>一 语言和环境<br/>A 实现语言<br/>C语言<br/>B 环境要求<br/>&nbsp; Turbo C2.0或Turbo C 3.0<br/>二要求<br/>&nbsp;&nbsp; 请用C语言编写一个程序,根据三角形的三条边计算三角形的面积,如果该三角形是等边或等腰要给出提示,并通过下面给定的算法来判断三角形是直角,钝角还是锐角三角形。<br/>程序的功能要求如下:<br/>1:先输入三角形的三条边的边长a,b,c;<br/>2:判断a,b,c能否构成三角形,构成三角形的条件是“任意两条边之和大于第三条边”,如果不能构成三角形则提示“不识三角形!”并退出;<br/>3:如果能构成三角形,则计算三角形的面积,公式见算法说明;<br/>4:判断三角形是否等边或等腰,公式见算法说明;<br/>5:判断三角形是直角,钝角还是锐角三角形,公式见算法说明。<br/>三,算法说明<br/>程序中用到的算法如下:<br/>1:计算三角形的面积<br/>使用海伦公式,已知三角形的三条边的边长为a,b,c,那么<br/>&nbsp;面积 </p><p>2:判断三角形是等边或是等腰<br/>如果三角形三条边相等,则为等边三角形;如果任意两条边相等但不等于第三条边,则为等腰三角形。<br/>3:判断三角形是直角,钝角还是锐角<br/>直角三角形是指有一个内角为90度的三角形,钝角三角形是指有一个内角大于90度的三角形,锐角三角形是指所有内角小于90度的三角形;<br/>如果三角形的任意一条边的平方等于其它两条边平方的和,则为直角三角形;如果任意一条边的平方大于其它两条边的和;否则,为锐角三角形。<br/>四,推荐实现步骤<br/>编写mian函数<br/>1)输入三角形的三条边的边长;<br/>2)判断是否能构成三角形,如果不能则提示并退出程序,否则继续;<br/>3)调用计算面积的函数calcArea,计算三角形面积,输出面积值;<br/>4)判断三角形是否等边或等腰,如果是则输出判断结果;<br/>5)判断三角形是直角,钝角还是锐角,并输出判断结果,提示:因为条件中需多处引用边的平方,为避免多次计算,建议使用变量保存边的平方值。</p><p></p><p></p><p></p><p>2,计算三角形的面积的函数calcArea<br/>此函数以三角形的边长为输入参数,函数原型参考如下:<br/>double calcArea(float a,float b,float c);<br/>函数要求:根据公式计算三角形的面积,计算平方根数学的函数为<br/>double sqrt(double)。<br/>程序运行参考界面图所示:<br/>C:\WINDOW\system32\cmd.exe<br/>D:\&gt;triangle<br/>请输入三角形的三条边长<br/>A=3<br/>B=3<br/>C=8<br/>不是三角形<br/>D:\&gt;triangle<br/>请输入三角形的三条边长<br/>A=3<br/>B=4<br/>C=5<br/>三角形的三条边长是:3.00,4.00,5.00<br/>三角形的面积是:6.00<br/>直角三角形</p><p>D:\&gt;triangle<br/>请输入三角形的三条边长<br/>A=6<br/>B=6<br/>C=6<br/>三角形的三条边长是:6.00,6.00,6.00<br/>三角形的面积是:15.59 <br/>等边三角形<br/>锐角三角形</p><p>D:\&gt;</p><p>五,注意事项<br/>A, 请注意在代码中添加必要的注释;<br/>B ,请注意代码的书写,命名符合规范。</p><p></p><p><br/>&nbsp; </p>
作者: 文木四水    时间: 2007-2-1 13:30
<p>解:</p><p>//第十二章---判断三角形<br/>#include&lt;stdio.h&gt;<br/>#include&lt;math.h&gt;<br/>double calcArea(float a,float b,float c);<br/>void main()<br/>{<br/>&nbsp;float a,b,c;<br/>&nbsp;double area;<br/>&nbsp;printf("\n\t请输入三条边的边长\n");<br/>&nbsp;printf("请输入第一条边:");<br/>&nbsp;scanf("%f",&amp;a);<br/>&nbsp;printf("请输入第二条边:");<br/>&nbsp;scanf("%f",&amp;b);<br/>&nbsp;printf("请输入第三条边:");<br/>&nbsp;scanf("%f",&amp;c);<br/>&nbsp;if(a+b&gt;c&amp;&amp;a+c&gt;b&amp;&amp;b+c&gt;a)<br/>&nbsp;{<br/>&nbsp;&nbsp;printf("\n三条边分别是\t%.2f\t%.2f\t%.2f\n",a,b,c);<br/>&nbsp;&nbsp;area=calcArea(a,b,c);<br/>&nbsp;&nbsp;printf("\n三角形的面积:%.2f\n",area);<br/>&nbsp;&nbsp;if(a==b&amp;&amp;b==c)<br/>&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;printf("\n等边三角形\n");<br/>&nbsp;&nbsp;}<br/>&nbsp;&nbsp;else if(a==b||b==c||a==c)<br/>&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;printf("\n等腰三角形\n");<br/>&nbsp;&nbsp;}<br/>&nbsp;&nbsp;if(a*a==b+c)<br/>&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;printf("\n直角三角形\n");<br/>&nbsp;&nbsp;}<br/>&nbsp;&nbsp;else if(a*a&gt;b+c&amp;&amp;b*b&gt;a+c&amp;&amp;c*c&gt;a+b)<br/>&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;printf("\n钝角三角形\n");<br/>&nbsp;&nbsp;}<br/>&nbsp;&nbsp;else<br/>&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;printf("\n锐角三角形\n");<br/>&nbsp;&nbsp;}<br/>&nbsp;}<br/>&nbsp;else<br/>&nbsp;{<br/>&nbsp;&nbsp;printf("\n不是三角形!\n");<br/>&nbsp;}<br/>&nbsp;getch();<br/>}<br/>double calcArea(float a,float b,float c)<br/>{<br/>&nbsp;double area1,d;<br/>&nbsp;d=(a+b+c)/2;<br/>&nbsp;area1=sqrt(d*(d-a)*(d-b)*(d-c));<br/>&nbsp;return area1;<br/>}</p>




欢迎光临 经典重庆 (http://bbs.jdcq.net/) Powered by Discuz! X3.1
收藏本站吧
(收藏后不再显示此按纽)