- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
南京邮电大学通达学院c语言程序报告.
南京邮电大学通达学院程序设计(上机)报告题 目: R015M P008E专 业 学 生 姓 名 班 级 学 号 指 导 教 师 日 期 2015年5月 评 分 细 则评分项优秀良好中等及格不及格遵守机房规章制度上机表现学习态度基础知识水平程序设计能力课题功能实现情况算法设计合理性用户界面友好性报告书写认真程度报告内容完整性文字表达清楚程度问题回答准确性评 分 等 级教师签名:年月日备 注实验一 R015M判断点与多边形位置关系问题一、问题描述:课题要求及总体功能描述课题要求:给定n个点的坐标,这n个点依次围成一闭合多边形,再给一点(x,y),判断它是否在多边形中。总体功能描述:首先随机输入一个大于2小于1000的整数n利用循环结构产生n个坐标输入需要判断的坐标(x,y)利用判断语句与之前产生的n个坐标进行依次比较得出判断结果二、课题分析:分析解决问题的思路,描述功能模块分解及每个模块的输入,输出和功能通过仔细分析问题,首先发现以下几个问题:如何随机产生n个坐标?如何将确定的坐标(x,y)与产生的n个坐标进行比较?总结:发现本问题着重对循环结构、判断语句、输入输出语句有很高的要求。本问题可以分解为4个功能模块:三、算法描述:自然语言自然语言(其中S1,S2,S3…为算法步骤);S1输入一个大于2小于1000的整数n;S2输入n个坐标点;S3如果前一个坐标x值大于后一个,则max1=前一个x值,否则max1=后一个x值;S4如果前一个坐标x值小于后一个,则min1=前一个x值,否则min1=后一个x值;S5如果前一个坐标y值大于后一个,则max2=前一个y值,否则max2=后一个y值;S6如果前一个坐标y值大于后一个,则min2=前一个y值,否则min2=后一个y值;S7输入需要判断的坐标x,y;S8如果xmin1||xmax1||ymin2||ymax2,则在多边形外,否则,在多边形内;四、源程序:重要的代码及其说明#includestdio.hvoid main(){int n,i,j;float x,y,a[1000][2],min1,max1,min2,max2;printf(请输入一个大于2小于1000的整数:\n);scanf(%d,n);printf(请输入%d个坐标点\n,n);for(i=0;in;i++) for(j=0;j=1;j++) scanf(%f,a[i][j]);max1=a[0][0];min1=a[0][0];for(i=0;i=n;i++){if(a[i][0]=a[i-1][0]) max1=a[i][0]; else max1=a[i-1][0]; if(a[i][0]=a[i-1][0]) min1=a[i][0]; else min1=a[i-1][0];}max2=a[0][1];min2=a[0][1];for(i=0;i=n;i++){if(a[i][1]=a[i-1][1]) max2=a[i][1]; else max2=a[i-1][1]; if(a[i][1]=a[i-1][1]) min2=a[i][1]; else min2=a[i-1][1];}printf(请输入(x,y)坐标:\n);scanf(%f%f,x,y);if(xmin1||xmax1||ymin2||ymax2) printf(Not in the polygon);else printf(in the polygon);}五、实验结果分析与讨论:描述不同条件下得到的实验结果;并讨论你所实现代码的优缺点,以及扩展思路调试记录:测试1:出现数据错误,需要输入大于5个的坐标,输入2个(x,y)的坐标******以下运行结果窗口截图*****反思:经过认真查找,发现缺少语句printf(Input n:\n);测试2:仍然出现数据错误,需要输入大量坐标数据,且跳过输入(x,y)的值便得出结果。******以下运行结果窗口截图*****反思:依然是漏掉了语句,反复排查后发现是scanf(%lf%lf,x,y); ******以下是正确程序后运行结果窗口截图****结果分析:程序可依照输入,得到想要的结果,依次判断出坐标是否在多边形内;优点:可快速得到结果缺点:程序较为繁琐,编译较为困难。出现这个问题源于在程序分析之初没有仔细推敲程序的结构。在编程的实验过程中我发现我的程序由许多的小问题在实验最后进行检查的时候发现一段多余的代码,经过分析这段代码是完全可以去除的。该算法仍然存在一定不足,比如该算法适用于规则多边形,在遇到不规则多边形时,很有可能点在多边形内部
您可能关注的文档
- 南京市玄武区2015-2016年八年级上期末考试数学试卷含答案..doc
- 南京市2016年六合区语文中考模拟试卷..doc
- 南京江宁圩村顶管工程..doc
- 南京林业大学新生校纪校规考试答案..doc
- 南京晓庄学院操作系统2015-2016期末考试试题八套..doc
- 南京新舱单数据接口标准..doc
- 南京禄口机场二期工程飞行区工程预验收计划140206-新.doc
- 南京航空航天大学07-09年有限元试卷..doc
- 南京配网租赁项目EPON无源光网络设备(OLT设备)技术规范..doc
- 南充市2017级高一下期期末生物试题..doc
- 中国国际海运集装箱股份有限公司校园招聘模拟试题附带答案详解推荐.docx
- 中国国际海运集装箱股份有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版最.docx
- 中国国际海运集装箱股份有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版新.docx
- 中国国际海运集装箱集团校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版及参考答案.docx
- 中国国际海运集装箱股份有限公司校园招聘模拟试题附带答案详解及参考答案.docx
- 中国国际海运集装箱股份有限公司校园招聘模拟试题附带答案详解一套.docx
- 中国国际海运集装箱股份有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版完.docx
- 中国国际海运集装箱股份有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版及.docx
- 中国国际海运集装箱股份有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版必.docx
- 中国国际海运集装箱股份有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版完.docx
文档评论(0)