版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、26eae3a8edd1d8d8118b3c496e2228f0.pdf 实验四(补充)程序的跟踪调试和变量值的监视练习(重要)前期总结1、编译运行程序时,如果出现语法错误,在最下面的框中会出现“.error(s).”提示,向上拉动滚动或拉高提标的外框就可以看到错误的相关提示。可以根据提示,大致估计并找到错误。错误提示错误1双击错误提示行,系统会大概提示错位的位置。2、一般情况下先解决错误的问题( : error LNK20.),可以暂时忽略警告( :warning C42.)3、当系统在“编译”或“组建”时因错误而长时间不停止,即下面左图三个按钮出现的情况 可如上面右图所示,用鼠示右键点击任
2、务栏的空白处,然后选择“任务管理器”。在“应用程序”页框中如下图将VC程序强制关闭。4、常见的错误提示:(1)类似于如下错误,应马上检查与错误提示里出现的关键字有关的代码的拼写是否有错LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main(检查main的拼写)C:a.cpp(7) : error C2065: 'scant' : undeclared identifier (检查scanf的拼写)(2)运行程序时,当输入数据后,出现如下提示,则应检查程序中是否有scanf函数的变量列表中缺少符号
3、&,(3)当程序编译时没有出现错误,但准备运行时,出现如下提示,请先“关闭工作区”。【实验内容】实验任务一:程序的跟踪调试和变量值的监视练习(下列程序可自行选择保不保存,不上交、但必须操作、理解,掌握其方法)程序跟踪调试实例4-1:程序跟踪调试和变量值的监视示例(请仔细按以下各步骤进行操作):输入x,计算并输出下列分段函数 f(x) 的值(保留1位小数)。源程序(有错误的程序)运行结果(改正后程序的运行结果)10.0f(10.00) = 0.1【操作步骤】:(1)输入源程序,并以error4_1.c文件名最终保存在实验4文件夹里,然后执行“编译/Build”>“编译/Compil
4、e”,出现第一个编译错误是:双击该出错信息,箭头指向else所在行,出错信息指出在else前缺少分号。在y = 1 / x后面补上分号后,重新编译,新出现的第一个出错信息(警告信息):双击该错误信息,箭头指向scanf("%f", x);所在行,出错原因是x的前面少了&。在x前面补上&后,重新编译并连接,均正确。(2)执行“工具”>“定制”,选择“调试”(如图4.1所示),出现调试工具栏(如图4.2所示),然后关闭“定制”对话框。单步执行按钮终止调试按钮图4.1 选择工具栏图4.2 调试工具栏(3)调试开始,单击调试工具栏中的单步执行(Step Ove
5、r(F10)),每次执行一行(如图4.3所示),编辑窗口中的箭头指向行表示程序将要运行该行。图4.3中列出了变量窗口(Variables Window) 和观察窗口(Watch Window),在Watch窗口中还可以改变变量的值。观察窗口变量窗口显示或隐藏观察窗口显示或隐藏变量窗口图4.3 程序调试开始(4)鼠标单击三次,程序执行到输入这一行(如图4.4所示),同时运行窗口(如图4.5所示)显示提示符“input x:”(注意:此时将要执行但还没有执行scanf(“%f”, &x);语句),继续单击,就可以在运行窗口输入x的值10(如图4.6所示),按回车键Enter后,箭头指向了“
6、if(x!=0)”这一行(如图4.7所示),在变量窗口可以看到变量x的值是10.0000,变量x的地址(&x)是0x0012ff7c。图4.4 程序单步调试图4.5 运行窗口图4.6 在运行窗口输入变量x的值10图4.7 程序单步调试,显示变量x的值和变量x的地址(5)继续单击二次,箭头指向了“else”这一行(如图4.8所示),在变量窗口可以看到变量y的值是0.100000。图4.8 程序单步调试,显示变量y的值(6)继续单击二次(如图4.9所示),运行窗口显示运行结果(如图4.10所示),符合题目的要求。图4.9 程序单步调试到最后一行图4.10 在运行窗口显示调试后的最后结果(7
7、)单击终止调试按钮(Stop Debugging(Shaft+F5)),程序调试结束。程序跟踪调试实例4-2:单步跟踪下面的程序,每执行完一条语句就观察各变量的值。将程序以debug4_1.c文件名最终保存在实验4文件夹里。程序跟踪调试实例4-3:单步跟踪下面的程序,每执行完一条语句就观察各变量的值,调试完后分析程序的执行过程及功能。将程序以debug4_2.c文件名最终保存在实验4文件夹里。?(1)先直接编译、连接、运行程序,若输入123,则输出什么?输入987、702呢?你能根据输出分析出程序的功能吗?(2)知道程序的功能后,请分析x1、x2、x3代表什么?为什么?通过单步跟踪程序来找出x
8、1、x2、x3的值,是否可以分析出它们代表什么?如何利用运算符“/”和“%”来求整数各位上的数字?程序跟踪调试实例4-4:)以下程序实现:判断用户输入的数是奇数还是偶数,并输出相应的信息。通过跟踪程序、分析程序是如何完成此功能的?将程序以debug4_3.c文件名最终保存在实验4文件夹里。(注:单词中文对照 remainder余数、even偶数、odd奇数)运行时,在提示: Enter your number to be tested.下输入: 2455输出什么?再次运行时,在提示:Enter your number to be tested. 下输入: 1210输出什么?同学们不妨再输入一些
9、数据试一试!程序跟踪调试实例4-5:通过跟踪程序、分析程序执行过程和执行结果。将程序以debug4_4.c文件名最终保存在实验4文件夹里。(运行5次,分别输入:1、2、3、4、8。分析每次程序的执行过程(执行路线)补充:思考 交换两个变量值的方法 问题描述:编程实现对两个变量的值进行交换 方法1:借助于第三个变量(临时变量)此方法最容易理解,较常用,特别适合初学程序设计的人。算法理解:我们不妨借助于“水与醋的交换”过程来帮助理解。【源程序清单:】 方法2:不使用第三个变量 【源程序清单:】(变量值的交换过程不妨参见下面有关注释语句) 方法3:利用函数调用或指针(暂不讲) 找出正整数各位上的数字方法 问题描述:给出一个不多于4位正整数,求出它是几位数,分别输出每一位数字。 方法:利用整数的除法和求余(模)运算例:找出一个任意四位正整数n的每一位数字的方法:个位数字a: a = n%10;十位数字b: b = n/10%10;百位数字c: c = n/10
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 儿科新生儿黄疸监测处理流程
- 塌陷土地赔偿协议书
- 药明生物销售分成协议书
- 离婚协议书需要过户
- 癫痫患者护理指导
- 子宫肌瘤不孕科普
- 孕产妇高血压疾病管理方案
- 2026吉林省长影集团有限责任公司招聘9人备考题库及一套参考答案详解
- 2026江西鹰潭月湖区民政局招聘工作人员1人备考题库附参考答案详解(精练)
- 2026云南红河州绿春县腾达国有资本投资运营集团有限公司招聘8人备考题库及参考答案详解(基础题)
- 浙江强基联盟2026年3月高三语文联考作文题目解析及范文:有的时候人们主动选择预制
- 2025年农村电商直播带货模式创新与规范发展
- 提高肿瘤治疗前TNM分期评估率
- 2026年工会干部业务知识培训考试题库及答案
- 2026 年中小学深入实施学生体质强健计划心得体会三
- 荨麻疹的定义、分类、诊断及管理国际指南(2026)解读课件
- DB61∕T 5132-2025 西安城市轨道交通工程监测技术标准
- 2026湖北恩施州战略规划研究中心选聘1人备考题库含答案详解
- 高速公路机电工程监理实施细则
- 2026年心理咨询师考试题库300道【含答案】
- 部编人教版六年级下册道德与法治课本练习题参考答案(全册)
评论
0/150
提交评论