网站大量收购独家精品文档,联系QQ:2885784924

中北大学C语言课程设计《计算四边形面积》.doc

中北大学C语言课程设计《计算四边形面积》.doc

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
中 北 大 学 课程设计说明书 学 院、系: 软件学院 专 业: 软件工程 学 生 姓 名: 学 号: 1221011319 设 计 题 目: 四边形计算 起 迄 日 期: 2013年10月11日~2013年11月16日 指 导 教 师: 李华玲 日期: 2013年11月16日 1 设计目的 ............... 2 任务概述 ................ 3 模块划分 ............... 4 主要函数说明及其N-S图 ............... 5 程序运行数据及其结果 .............. 6 程序设计心得 ........ 7 附录(代码) ....... 1 设计目的 (1)进一步巩固和复习C程序设计的基础知识; (2)培养学生结构化程序、模块化程序设计的方法和能力; (3)了解软件的编制过程及各环节的具体内容; (4) 提高程序调试技巧、软件设计能力和代码规范化等素质; 提高分析问题、解决问题以及实际运用能力。 2 任务概述 用C程序语言编写源程序来验证计算四边形,要求: 在屏幕上能够手动输入待计算的四边形各边边长,顶点、对角线上各点及延长线的交点的名称; 输入完成后通过选择后,可以通过编写的程序验证三角形RMN的面积是四边形ABCD面积的四分之一; 将验证结果显示在屏幕上。 验收时程序能够演示,自己单独做。 3 模块划分 4 主要函数说明及其N-S图 ( 1)首先根据提示从键盘手动输入四个定点的坐标,调用“初步检测四边形函数”检查输入的点是否可用,如果有重合在一起的点或AB与CD近乎平行,则异常结束。 (2)其次,推算M、N两个“中点”的坐标,并且调用求交点函数计算BA与CD延长后的交点r的坐标。 (3)接着,调用“计算三角形面积的函数”分别算出四边形abcd和三角形的mnr的面积。计算四边形abcd面积的时候,需要检测该四边形是否为凹四边形,如是,则异常结束,必要地,计算三角形面积的时候需要调用“计算两点间线段距离的函数”。 (4)最后,计算四边形abcd和三角形的mnr的面积之比,并输出结果。 开始 定义 pname[]=ABCD,*p=pname, Point m,n,r,P[4],*PP=P, double abcd,rmn,abcd1 !ok(P) Y N *p printf(input (x,y) of point %c:,*p) scanf(%lf%*c%lf,PP-x,PP-y p++ pp++ fprintf(stderr,invalid input...\n\n) exit(1) m.x = (a.x+c.x)/2 m.y = (a.y+c.y)/2 n.x = (b.x+d.x)/2 n.y = (b.y+d.y)/2 r= pointOfIntersection() abcd = area_of_triangle(a,b,c) + area_of_triangle(a,d,c) abcd1= area_of_triangle(a,b,d) + area_of_triangle(b,d,c) fabs(abcd1-abcd)EPS Y N fprintf(stderr,凹四边形!不行!\n\n) exit(2) rmn = area_of_triangle(r,m,n) printf(as a result\nABCD:RMN=%4.2f:%4.2f=%4.2f\n ,abcd,rmn,abcd/rmn); 图1-1主函数main() 定义side[4],i,j 定义t j=(i+1)%4 t=length(p[i],p[j]) fabs(t)EPS) Y N side[i]=t return 0 定义k1,k2 for(i=0;i4;i++) k1=(p[1].y-p[0].y)/(p[1].x-p[0].x) k2=(p[3].y-p[2].y)/(p[3].x-p

您可能关注的文档

文档评论(0)

119220 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档