欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    测绘程序设计实验报告.docx

    • 资源ID:9853932       资源大小:522.36KB        全文页数:99页
    • 资源格式: DOCX        下载积分:12金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    测绘程序设计实验报告.docx

    1、测绘程序设计实验报告 测绘程序设计(C版)实习报告学 号: * * * *班 级: 1420501Z 专 业: 测绘工程 课程名称:测绘程序设计(C及Matlab)指导老师: 肖根如 2015年12月前言1一、实验目的1二、实验环境2三、Turbo C 3.0与VC+6.0的熟悉与操作2四、实验内容梗概3五、实验具体内容4实验一 算法4实验二 数据类型、运算符和表达式5实验三 控制语句6实验四 函数9实验五 数组11实验六 结构体与共用体12六、常见错误及分析14七、程序调试15八、实验心得与体会17九、附录:实习程序设计清单21 前言现代科学飞速发展,世界也不断的变化,人类的生活随着科技的发

    2、展也发生着惊天动地的变化。作为新时代的大学生,我们应该不断努力学习科学文化知识,以适应社会的发展要求,以现代化的科学知识为祖国做贡献。而C语言作为一种计算机语言,无疑是我们将来工作不可缺少的一门技能,所以我们应该认真学好C语言。但只是课本上的知识是不够的,我们应该将从课本上学到的理论知识应用到实践中,通过不断的实践,在实践中发现错误解决错误,并不断创新,最后能熟练的运用所学的知识,充分掌握这种工具。C语言知识博大精深,有必要对C语言的专著进行研究学习,多阅读别人的程序代码、多动手实践操作与设计,这样便对程序算法精简改进提供了可能。想学的更深更透彻的话就必须进一步掌握运用C进行程序设计的能力;进

    3、一步理解和运用面向过程程序设计的思想和方法;初步掌握开发一个小型实用系统的基本方法;学会调试一个较长程序的基本方法;学会利用互联网查找相关的知识并学习;学海之路何其宽广,有必要让我们孜孜不倦的求索下去。一、实验目的C语言程序设计实习是在学习C语言程序设计理论知识的基础上进行的实践教学环节,其目的是培养我们具有初步的C语言程序设计、编程、调试和排除C语言程序语法、逻辑错误的能力。全面熟悉、掌握C语言基本知识,掌握C程序设计中的顺序、分支、循环三种结构及数组、函数和C语言基本图形编程等方法,把编程和实际结合起来,增强对不同的问题运用和灵活选择合适的数据结构以及算法描述的本领,熟悉编制和调试程序的技

    4、巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用计算机解决实际问题的能力,养成提供文档资料的习惯和规范编程的思想,为以后在专业课程中应用计算机系统解决计算、分析、实验和设计等学习环节打下较扎实的基础。在实习过程中,我们要认真复习基本概念,独立编写程序,并上机调试运行,培养自己发现程序中的错误、改正错误以使程序能正确运行的能力。经验丰富的人,当编译时出现“出错信息”时,能很快地判断出错误所在,并改正之。而缺乏经验的人即使在系统给出明确出错提示信息下也往往找不出错误而求救于别人。对于我们来说,不仅要了解和熟悉有关理论和方法,还要求自己动手实现,要求会编写程序并上机调试通过。因此调试

    5、程序本身是程序设计课程的一个重要内容和基本要求,应给予充分的重视。调试程序的经验固然可以借鉴他人的现成经验,但更重要的是通过自己的直接实践来积累,而且有些经验是只能“意会”难以“言传”。调试程序的能力,是学完C语言程序设计之后,我们应当掌握的一项基本功。因此,千万不要在程序通过后就认为完成任务了,而应当在已通过的程序基础上作一些改动(例如修改一些参数、增加程序一些功能、改变输入数据的方法等,甚至于“自设障碍”,即把正确的程序改为有错的,如用scanf函数输入变量时,漏写“&”符号,使数组下标越界,使整数溢出等),观察和分析所出现的情况,并认真、及时总结。这样的学习是灵活主动的学习而不是呆板被动

    6、的学习,才会有真正的收获。因此,我们的实习目的可综合的概括为:1熟悉TC20、TC30和VC+6.0的运行环境。2了解在TC20、TC30和VC+6.0上如何编辑、编译、连接和运行一个C程序。3熟练使用各种C语言的数据结构及类型、运算符与表达式。4熟练掌握格式输入与格式输出函数的使用。5通过运行简单的C程序,初步了解C源程序的特点,初步掌握查错和排错的技能。二、 实验环境PC微机 Windows 操作系统 Turbo C 3.0与VC+6.0程序集成环境三、 Turbo C 3.0与VC+6.0的熟悉与操作(一) Turbo C 3.01.在安装Turbo C编译系统基础上,则在DOS命令状态

    7、下键入命令tc。进入Turbo C集成环境后,首先在屏幕上显示Turbo C主菜单窗口。在该窗口,有8个菜单条目。每一个菜单的意义如下: File 处理文件(包括装入、存盘、选择、建立、换名写盘),目录操作(包括列表、改变工作目录),退出系统及调用DOS 。 Edit 建立、编辑源文件。Run 控制运行程序。如果程序已经编译连接好,且Debug/Source Debugging以及Option/Compiler/Code generation/OBJ Debug Information开关置为On,则可以用此菜单初始化调试阶段。 Compile 编译并生成目标程序与可执行文件。 Project

    8、 允许说明程序中包含哪些文件的管理条目。 Options 可以选择集成环境任选项(如存储模式、编译时的任选项、诊断及连接任选项)及定义宏;也可以记录Include Output及Library文件目录,保存编译任选项和从配置文件加载任选。 Debug 检查、改变变量的值,查找函数,程序运行时查看调用栈。选择程序编译时是否在执行行代码中插入调试信息。 Break/Watch 增加、删除、编辑监视表达式,及设置、清除、执行至断点。 2.特别要指出的是,除了Edit项外,每一个菜单又有对应的子菜单。而选择Edit项目后,只是进入编辑器。 为了从主菜单中选择所需要的功能,可以用以下两种方式之一: (1

    9、)按F10键后,可以看到屏幕上部主菜单中有反白显示,此时,利用左、右光标移动键(与)选择需要的菜单,然后按回车(Enter)键。 (2)直接按Alt+主菜单条目中的首字母(分别为F,E,R,C,P,O,D,B),此时就会出现相应的子菜单。例如,按Alt+F表示选择文件子菜单(File)。当出现子菜单时,其中某个条目是高亮度的,此时可以利用上、下光标移动键(与)来移动该高亮度线,从而选择所需要的功能。在菜单调用时,按Esc键后将直接返回到活动窗口。(二)VC+6.01安装和启动 运行Visual Studio软件中的setup.exe程序,选择安装Visual C+ 6.0,然后按照安装程序的指

    10、导完成安装过程。 2创建工程项目 用Visual C+6.0系统建立C语言应用程序,首先要创建一个工程项目(project),用来存放C程序的所有信息。创建一个工程项目的操作步骤如下: 进入Visual C+6.0环境后,选择主菜单“文件(File)”中的“新建(New)”选项,在弹出的对话框中单击上方的选项卡“工程(Projects)”,选择“Win32 Console Application”工程类型,在“工程(Project name)”一栏中填写工程名。3. 新建C源程序文件 选择主菜单“工程(Project)”中的“添加工程(Add to Project) 新建(New)”选项,为工

    11、程添加新的C源文件。4打开已存在的工程项目,编辑C源程序 进入Visual C+6.0环境后,选择主菜单“打开工作区(Open Workspace)”命令,在“Open Workspace”对话框内找到并选择要打开的工作区文件,单击“确定(OK)” 按钮,打开工作区。5在工程项目中添加已经存在的C源程序文件 选择主菜单“打开工作区(Open Workspace)”命令,在“Open Workspace”对话框内找到并选择要打开的工作区文件,单击“确定(OK)”按钮打开工作区。6编译、连接和运行 (1)编译 选择主菜单“编译(Build)”中的“编译(Compile)”命令,或单击工具条上的图标

    12、,系统只编译当前文件而不调用链接器或其它工具。输出(Output)窗口将显示编译过程中检查出的错误或警告信息,在错误信息处单击鼠标右键或双击鼠标左键,可以使输入焦点跳转到引起错误的源代码处大致位置以进行修改。(2)构建 选择主菜单“编译(Build)”中的“构建(Build)”命令,或单击工具条上的图标,对最后修改过的源文件进行编译和连接。7调试程序 在编写较长的程序时,能够一次成功而不含有任何错误决非易事,对于程序中的错误,系统提供了易用且有效的调试手段。调试是一个最基本的技能,不会调试就意味着即使学会了一门语言,却不能编制出任何好的软件。我们在前期进行编写程序时,经常会犯一些语句上的错误,

    13、熟练了过后,会犯一些逻辑上的错误,而这些错误往往是不易察觉的。四、实验内容梗概(一)算法算法是编写程序的灵魂,数据是加工的对象,语言是工具。在编译任何程序前,我们必须认真地进行思考和设计数据结构及操作步骤。(二)数据类型、运算符和表达式 在计算及高级语言中,数据的表现形式有常量和变量。在实习过程中,我们应当掌握数据类型、运算符和表达式,并且能在C语言实现过程中熟练的定义变量以及明确各种运算符之间的计算。 (三)三种基本结构顺序结构、选择结构、循环结构等三种结构是C语言程序设计的三种基本结构,严格来说,所有的C程序都应由这三种基本结构组成。开始就着重这三种基本结构的应用练习,旨在使我们对于这三种

    14、结构有一个更加深刻的理解,能够根据处理问题的需要选择不同的结构进行处理。由于顺序结构在这三种结构中是最基本的,实际上当我们把程序中的选择结构部分和循环结构部分看作一个整体时,那么,整个程序就总是由顺序结构组成的了。(四)函数我们如果要用C语言进行大程序设计,一般采用模块化的思想。其基本思想是将一个大的程序按照功能进行分割成一些模块,使每一个模块都成为功能单一、结构清晰、接口简单、容易理解的小程序。C语言是用函数来实现这种模块化功能的。我们用C语言设计程序,任务只有一种,就是编写函数,至少也要编写一个main()函数。根据程序的复杂程度,还可以编写多个子函数。在这一部分我们就通过练习进一步掌握用

    15、子函数来进行模块化程序设计的方法,熟悉子函数的调用和执行过程。(五)数组应用数组是一种构造数据类型,指的是一组同类型数据组成的序列,运用数组可以高效地处理很多问题。五、实验具体内容【实验一】算法(一)实验目的 1.熟悉和掌握用SmartDraw软件进行流程图的绘制 2.了解流程图的格式 3.明确算法的目的(二)实验内容 1.用流程图来表示算法2.检查流程图的语句错误与逻辑错误(三)实验步骤我们以水准测量为例1.我们在进行水准测量前,我们应该确定测量路线以及选取测量方向,然后就将水准仪整平准备测量;2.在测量过程中,我们要对数据的可靠程度进行判断,所以在判断框中输入“d5?”,表示判断视距差是否

    16、在误差范围之内;3.当测量站数大于1后,就需要对视距差之和进行判断,如果前几站视距差之和大于限差,则需重测。所以,在后面加上一个判断框,写上“D10?”;3.如果满足了两个判断框的条件,则进行下一站的测量;如果不满足其中的一个条件,就需要重新进行数据测量及输入;4.最后判断是否将整个测区测完,如果没有则继续测量,直至测完为止。测量完成且满足限差要求,就可停止运行计算。(四)实验总结1.程序设计反映了利用计算机解决实际问题的全过程,具体要经过以下四个基本步骤:分析问题,确定数学模型或方法;设计算法,画出流程图;选择编程工具,按算法编写程序;调试程序,分析输出结果。2.为解决一个问题而采取的方法和

    17、步骤,就算法。算法是程序设计的核心。3.算法具有5个特性:有穷性、确定性、有效性、要有数据输入、要有结果输出。算法的评价标准包括:正确性、可读性、通用性、高效率。算法效率的度量分为时间度量和空间度量。 4.描述算法有多种不同的工具,常用的有:流程图、结构化流程图和伪代码等。实用结构化流程图能帮助培养良好的程序设计风格,提倡用结构化流程图表示算法。【实验二】 数据类型、运算符和表达式 (一)实验目的 1.掌握C语言的数据类型,了解C语言中数据类型的意义,熟悉如何定义整型、字符型和实型的变量,以及对它们赋值的方法。2.掌握不同类型的数据之间赋值的规律。3.学会用C的有关算术运算符,以及包含这些运算

    18、符的表达式,特别是是+和运算符的使用。4.掌握C语言中使用最多的一种语句赋值语句的使用方法。5.掌握scanf()函数、printf()函数的调用方法,掌握各种类型数据的输入输出的方法,能正确使用各种格式转换符。6.掌握字符输入输出函数getchar()、putchar()函数的调用方法。 (二)实验内容 1.用printf函数来输入表达式运行结果。2.观察实验步骤中表达式的结果。 (三)实验步骤 以方位角的计算为例:1.在明确该程序算法以及熟知各种数据类型的基础上,先确定三个变量,然后声明它们的数据类型2.赋予那两个已经声明变量各自的初值3.根据变量,执行判断语句,判断b是否大于180度4.

    19、根据算法,写出表达式,并根据判断结果运行不同的表达式5.最后用printf输出计算结果输入程序:int main() int a12,a23,b; a12=100,b=50; if(b180) a23=a12+b-180; else a23=a12-b+180; printf(a23=%dn,a23);运行结果为:(四)实验总结1.C语言数据类型有:基本类型(整型、字符型、实型)、构造类型(结构体类型、公用体类型、枚举类型)、指针类型和空类型。整型又分为段整形、基本整型和长整型三种。整型还可以分为有符号型和无符号型。实型分为单精度型和双精度型。2.变量是一个用于存放数值的内存存储区,根据变量的

    20、类型不同,该存储区被分配不同字节的内存安源。变量用标识符命名。C程序中用到的任何变量都必须在使用前进行定义。3.整形变量可以用十进制、八进制、和十六进制来表示。4.转义字符占一个字节,分为以下三类:(1)控制输出格式的转义字符:n、t、b、r、f等。(2)控制三个特殊符号输出的转义字符:、”5.C语言的运算符(1)基本算术运算符:+-*/%,先乘除、求余,后加减;对于/运算,两个整数相除结果仍为整数;%运算符只对整型数据有效。(2)逗号运算符的运算规则:从左向右依次运算每一个表达式,逗号表达式的结果就是最后一个表达式的值。6.+或可以卸载变量之前,也可以写在变量之后。如果对变量施加了前缀或后缀

    21、运算,并参与其他运算,则前缀运算是先改变变量的值再做运算,而后缀运算是先参与运算后改变变量的值。自增和自减运算符的运算对象只能是变量,而不能是表达式或常量。7.当表达式中含有不同类型的数据时,运算的数据类型默认按隐式类型转换,即从精度低的类型自动转换成精度高的类型,否则会造成精度损失。8.C语言中没有提供输入输出语句,在其库函数中提供了一组输入输出函数。其中对标准输入输出设备进行格式化输入输出的函数是scanf和printf。9.输入函数scanf()的功能是接受键盘输入的数据给变量输出函数printf()的功能是将数据以一定格式显示输出。(1)输出函数的一般形式为:printf(“格式控制字

    22、符串“,输入项表)其中格式控制字符串由格式说明符、转义序列和普通字符组成。而一个格式说明符将引起一个输出参数项的转换与显示。格式说明符是由%引出并以一个类型描述符结束的字符串,中间是一些可选的附加说明项。(2)输入函数的一般形式为:Scanf(“格式控制字符串“,输入项表)其中格式控制字符与printf()函数中的类似,不过一般只含有简单的格式说明符;输入项表至少有一个输入项,且必须是变量的地址(用变量名前加&表示)Printf()和scanf()都要求格式转换说明符与输入项在个数、顺序、类型上一一对应。 【实验三】控制语句(一)实验目的 1.熟练掌握if 、ifelse、ifelseif语句

    23、和switch语句格式及使用方法,掌握if语句中的嵌套关系和匹配原则,利用if语句和switch语句实现分支选择结构。 2.熟练掌握while语句、do while语句和for语句格式及使用方法,掌握三种循环控制语句的循环过程以及循环结构的嵌套,利用循环语句实现循环结构。 3.掌握简单、常用的算法,并在编程过程中体验各种算法的编程技巧。进一步学习调试程序,掌握语法错误和逻辑错误的检查方法。 (二)实验内容 1.选择结构程序设计; 2. if语句的使用;3.使用switch语句实现多分支选择结构;4.三种循环语句的应用; 5.循环结构的嵌套;6.break和continue语句的使用。 (三)

    24、实验步骤 以带号计算为例1.根据所需计算的方法分为三度带和六度带,确定程序的结构2.定义变量,之后确定其数据类型,用scanf进行输入经度和判断标志3.我们需要选择计算方式,如果选用三度带进行计算,则将判断标志设为0,如果选用六度带进行计算,则判断标志设为费0的数4.用ifelse进行选择后,就进行计算5.计算完毕后,用printf输出结果输入程序:int main() int n,m,l; scanf(%d%d,&l,&m); if(m=0) n=(l+3)/6; else n=l/3; printf(该点位于第%d带n,n);输出结果为: 以素数对的计算为例1.在明确素数对的定义及算法的基

    25、础上,我们先确定变量个数及名称,并且声明它们的数据类型2.然后确定用for的嵌套结构对素数对进行循环的判断、选择3.用if结构进行判断,判断的依据是首先这个数必须是素数,即不能被除了1与它本身外的数整除,其次,需要满足的条件是这两个素数必须相差2,所以先寻找“k=(int)sqrt(j)”作为除数,然后执行“if(j%i=0)”进行判断其是否为素数,在执行” if(k2-k1=2)”判断它们是否为素数对,不满足其中的一个判断条件,则执行” break”,跳出循环4.找出素数对之后,用printf进行输出程序输入: for(j=2;j=lyj;j+) prime=1; k=(int)sqrt(j

    26、); for(i=2;i150 & (a1+a2)30)printf(overrun!);elsexp=(x1*tan(a1*PI/180)+x2*tan(a2*PI/180)+(y2-y1)*tan(a1*PI/180)*tan(a2*PI/180)/(tan(a1*PI/180)+tan(a2*PI/180);yp=(y1*tan(a1*PI/180)+y2*tan(a2*PI/180)+(x2-x1)*tan(a1*PI/180)*tan(a2*PI/180)/(tan(a1*PI/180)+tan(a2*PI/180);printf(p=(%d,%d)n,xp,yp);改为函数形式程序输入为:double m(double x1, double x2, double x3, double x4,double x5,double x6,double x7,double x8,double x9,double x10)double l; l=(x1*tan(x2*PI/180)+x3*tan(x4*PI/180)+(x5-x6)*tan(x7*PI/180)*tan(x8*PI/180)/(tan(x9*PI/180)


    注意事项

    本文(测绘程序设计实验报告.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开