c语言调试运行 窗口是怎样的,关于C语言程序的调试

《关于C语言程序的调试》由会员分享,可在线阅读,更多相关《关于C语言程序的调试(36页珍藏版)》请在人人文库网上搜索。

1、关于C 语言程 序的 调 试,前言: C 语言程序的调试主要是为了排除程序的逻辑错误, 在程序运行的结果与预期的结果不一致的情况下进行。,C 语言程序调试的手段有多种: 1. 最简单的一种是”单步调试”,使用”step over” . 一步一步地执行. 可在“变量窗口”(Variables)观察和分析变量的变化。,2. 使用 设置(或取消)断点, 再使用 运行到断点. 可在“变量窗口”(Variables)观察和分析变量的变化。 然后决定是继续单步执行,还是运行到下一个断点。,C+ 6.0的界面窗口如下:,3. 运行到光标处: 先定位好光标的位置,再使用 (run to cursor)运行 到。

2、光标处。 然后决定是继续单步执行,还是运行到下一个断点。,输出窗口,工作窗口,编辑窗口,可在菜单栏空白处右击.选择要显示的窗口和工具条。,调试工具条的显示:,方法:使用右键: 在菜单栏空白处右击.,调试程序示例1: 计算分段函数: 1/x x0 f(x) = 0 x=0,#include void main() float x,y; printf(input x:n); scanf(%f,x) if(x!=0) y=1/x; else y=0; printf(f(%.2f)=%.1fn,x,y); ,注: 在进行调试前,首先要正常通过编译和连接,排除所有语法错误.,点击此按钮进行编译.,1.“。

3、输出窗口”显示出错信息说明及大致行数.,3.黑色箭头指示错误的大致位置.,2. 双击某行错误信息.,一.单步调试: 主要是解决程序的逻辑错误: 运行结果与期望值不一致.,开始单步调试: 单击”单步执行”(Step Over(F10),变量窗口.,观察(wacth)窗口. 可以输入变量和表达式,观察它们的值.,当运行到输入语句时,任务标上会出现小图标. 点击之.,在输入窗口输入数据.,2. 停止调试: 单击”终止调试”(Stop Debuging),终止调试.,二. 设置断点调试:,调试程序示例2: 计算累加和,程序有错。 #include void main() int i,sum; for(。

4、i=1;i=100;i+) sum=sum+i; printf(sum=%dn,sum); ,排除语法错误,运行后发现其结果显然不对。,如下图所示,设置一断点。,在变量窗口发现sum的值有问题!,这时应想到是变量没赋初值。,注:如果程序代码多,可设多个断点,。,调试程序示例2: 输入一个510之间的整数n,求:1!+2!+.n!. #include void main() int n=0,i=1,s,k=1; printf(请输入5-10之间任意数:n); scanf(%d, ,三. 运行到光标处:,排除语法错误,运行后发现其结果显然不对。,2.输入数据后,运行到光标处.,同时观察变量的变化。。

5、,说明: 1. 可以使用”单步”,”断点”,”运行到光标处”等手段互相 组合来进行.,2. 在调试时,也可利用”监视窗口”,输入变量或表达式,观察其值的变化.,输入变量或表达式,同时观察其值的变化。,调试示例: 求二数的最小公倍数和最大公约数.,#include void main() int m,n,j,k; printf(input m,n:n); scanf(%d%d, ,Input m n: 3 7(回车),首先排除所有语法错误后,运行程序:,输出结果: 最小公倍数是:3 最大公约数:7 答案不对!,调试方法: 1. 首先要排除语法错误 .,点击此按钮进行编译.,当排除所有语法错误后,。

6、进行下步操作:,(在光标所在行)点击此图标设断点(再点击即取消).,根据需要可以设置多个断点.,调试开始:,点击此图标(GO),运行到断点处.,中间有一输入语句, 输入数据:-3 7,程序运行到第一个断点.,在”变量窗口”观察到: m=-3, n=7.,再次点击此图标(GO),运行到第二个断点处.,在”变量窗口”观察到: m= -3, n=7. 在此处发现问题.,什么问题? 是因为数据输入不对! 程序要求不允许输入负数,二个数必需为正数,否则程序不能往下走.,单击”终止调试”(Stop Debuging),终止调试.,把循环条件: (M0 & n0) 改为: ( M0 | n0),关闭工作区间,重新编译,设置二个断点.,点击图标(GO),运行. 如输入: -3 7. 再点击图标(GO),程序不向下走. 说明有问题:输入数据不对!,重新输入正确数据: 3 7 .,点击图标(GO),运行到第二个断点. 然后可以执行”单步调试”,运行到printf()处. 发现:j=3 k=7. 答案也不对! 说明第二个断点后有问题.,单击”终止调试”(Stop Debuging),仔细分析. 循环条件改为(j%n!=0),Input m n: 3 7(回车),重新运行程序:,输出结果: 最小公倍数是:21 最大公约数:1,C 语 言 程 序 调 试 结 束。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值