




已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
关于C语言程序的调试,前言:C语言程序的调试主要是为了排除程序的逻辑错误,在程序运行的结果与预期的结果不一致的情况下进行。,C语言程序调试的手段有多种:1.最简单的一种是”单步调试”,使用”stepover”.一步一步地执行.可在“变量窗口”(Variables)观察和分析变量的变化。,2.使用设置(或取消)断点,再使用运行到断点.可在“变量窗口”(Variables)观察和分析变量的变化。然后决定是继续单步执行,还是运行到下一个断点。,C+6.0的界面窗口如下:,3.运行到光标处:先定位好光标的位置,再使用(runtocursor)运行到光标处。然后决定是继续单步执行,还是运行到下一个断点。,输出窗口,工作窗口,编辑窗口,可在菜单栏空白处右击.选择要显示的窗口和工具条。,调试工具条的显示:,方法:使用右键:在菜单栏空白处右击.,调试程序示例1:计算分段函数:1/xx0f(x)=0 x=0,#includevoidmain()floatx,y;printf(inputx:n);scanf(%f,x)if(x!=0)y=1/x;elsey=0;printf(f(%.2f)=%.1fn,x,y);,注:在进行调试前,首先要正常通过编译和连接,排除所有语法错误.,点击此按钮进行编译.,1.“输出窗口”显示出错信息说明及大致行数.,3.黑色箭头指示错误的大致位置.,2.双击某行错误信息.,一.单步调试:主要是解决程序的逻辑错误:运行结果与期望值不一致.,开始单步调试:单击”单步执行”(StepOver(F10),变量窗口.,观察(wacth)窗口.可以输入变量和表达式,观察它们的值.,当运行到输入语句时,任务标上会出现小图标.点击之.,在输入窗口输入数据.,2.停止调试:单击”终止调试”(StopDebuging),终止调试.,二.设置断点调试:,调试程序示例2:计算累加和,程序有错。#includevoidmain()inti,sum;for(i=1;i=100;i+)sum=sum+i;printf(sum=%dn,sum);,排除语法错误,运行后发现其结果显然不对。,如下图所示,设置一断点。,在变量窗口发现sum的值有问题!,这时应想到是变量没赋初值。,注:如果程序代码多,可设多个断点,。,调试程序示例2:输入一个510之间的整数n,求:1!+2!+.n!.#includevoidmain()intn=0,i=1,s,k=1;printf(请输入5-10之间任意数:n);scanf(%d,三.运行到光标处:,排除语法错误,运行后发现其结果显然不对。,2.输入数据后,运行到光标处.,同时观察变量的变化。,说明:1.可以使用”单步”,”断点”,”运行到光标处”等手段互相组合来进行.,2.在调试时,也可利用”监视窗口”,输入变量或表达式,观察其值的变化.,输入变量或表达式,同时观察其值的变化。,调试示例:求二数的最小公倍数和最大公约数.,#includevoidmain()intm,n,j,k;printf(inputm,n:n);scanf(%d%d,Inputmn:37(回车),首先排除所有语法错误后,运行程序:,输出结果:最小公倍数是:3最大公约数:7答案不对!,调试方法:1.首先要排除语法错误.,点击此按钮进行编译.,当排除所有语法错误后,进行下步操作:,(在光标所在行)点击此图标设断点(再点击即取消).,根据需要可以设置多个断点.,调试开始:,点击此图标(GO),运行到断点处.,中间有一输入语句,输入数据:-37,程序运行到第一个断点.,在”变量窗口”观察到:m=-3,n=7.,再次点击此图标(GO),运行到第二个断点处.,在”变量窗口”观察到:m=-3,n=7.在此处发现问题.,什么问题?是因为数据输入不对!程序要求不允许输入负数,二个数必需为正数,否则程序不能往下走.,单击”终止调试”(StopDebuging),终止调试.,把循环条件:(M0&n0)改为:(M0|n0),关闭工作区间,重新编译,设置二个断点.,点击图标(GO),运行.如输入:-37.再点击图标(GO),程序不向下走.说明有问题:输入数据不对!,重新输入正确数据:37.,点击图标(GO),运行到第二个断点.然后可以执行”单步调试”,运行到printf()处.发现:j=3k=7.答案也不对!说明第二个断点后有问题.,单击
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 直肠癌保肛切除术后护理
- 常用机床电气检修(第二版)课件:T68 型卧式镗床电气检修
- 血透高位瘘穿刺及护理
- 幼儿园设计理论基础与实践
- 血液淋巴瘤患者的护理
- 胸腰椎骨折伴截瘫的护理
- 三维设计在小学语文教学中的应用
- 便携式简易呼吸机技术解析与应用
- 水电解质紊乱的护理
- 文化创意产业园区品牌塑造与2025年产业集聚的产业集聚与产业链升级路径报告
- 《智慧房产营销策略》课件
- 海关退运协议书
- 2025届广西邕衡教育名校联盟高三下学期新高考5月全真模拟联合测试地理试题及答案
- 2O25中国商业航天创新生态报告
- 医院总值班培训课件
- (二模)2025年深圳市高三年级第二次调研考试物理试卷(含标准答案)
- 赣州城投招聘试题及答案
- 湖北省武汉市2025届高中毕业生四月调研考试物理试题及答案(武汉四调)
- 全国统一考试考务人员网上培训考试试题及答案
- MOOC 隔网的智慧-乒羽两项-西南交通大学 中国大学慕课答案
- JTT327-2016 公路桥梁伸缩装置通用技术条件
评论
0/150
提交评论