- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
概论-网络与通信工程研究所-浙江工商大学
1.9 本课程相关信息 1.9.5 编程工具 Win7及以下版本,可以用VC++6.0编C语言程序,中英文版本可以从我这里copy Win8及以上版本,可以用下面编程工具 Visual Studio 20××——这是VC++6.0的升级版 下载地址:/downloads/ Dev C++ 下载地址:/projects/orwelldevcpp/ 10. VC++程序的调试 1.10 VC++程序的调试 1.10.1 背景 调试就是debug(程序除错)。bug本意是臭虫、缺陷、损坏等意思。现在人们将在电脑系统或程序中,隐藏着的一些未被发现的缺陷或问题统称为bug(漏洞)。 调试主要指解决逻辑错误(语意错误),而不是语法错误。 1.10.2 VC++中的调试技术 设置断点(breakpoint)。如果你在某一行代码处添加了断点,那么程序运行到断点处即会暂停,不再继续往下运行,直到接到你继续运行的命令 单步运行。你每按一下相关按钮,运行一行代码。 参看变量。在单步运行中随时了解某个变量的值。 在掌握“单步运行”之前,你只能依靠在代码中添加N个printf来输出查看到底是哪里出了问题。这是低效率的。 异常处理。经常因为使用无效的指针(地址)而导致出现异常。 1.10 VC++程序的调试 1.10.3 调试工具条/菜单 在调试运行开始前,工具条如下所示 在调试运行开始后,自动弹出以下工具条: 1.10 VC++程序的调试 1.10.3 调试工具条/菜单 在调试运行开始后,自动弹出以下工具条: 1.10 VC++程序的调试 1.10.3 调试工具条/菜单 如果没有看到工具条,选择菜单栏的Tools菜单项,出现如下窗口,然后在?Debug?打上勾,就?ok。 还有一个方法:在工具栏的空白处点击右键会弹出上图菜单。 1.10 VC++程序的调试 调试运行时会自动出现以下的Debug菜单条 1.10.3 调试工具条/菜单 1.10 VC++程序的调试 1.10.4 单步调试实例 1.10 VC++程序的调试 1.10.4 单步调试实例 1.10 VC++程序的调试 1.10.4 单步调试实例 1.10 VC++程序的调试 1.10.5 异常处理实例 1.10 VC++程序的调试 1.10.5 异常处理实例 1.10 VC++程序的调试 点击“取消”开始调试 1.10.5 异常处理实例 1.10 VC++程序的调试 点击“取消”开始调试 点击“允许本次操作” 1.10.5 异常处理实例 1.10 VC++程序的调试 1.10.5 异常处理实例 1.10 VC++程序的调试 从黄箭头可知出问题的地方在哪里 1.10.5 异常处理实例 1.10 VC++程序的调试 这是异常处理的另外一个例子,可以点击重试?(R)?按钮获知出问题的地方在哪里 1.10.5 异常处理实例 1.10 VC++程序的调试 这是异常处理的又一个例子,可以点击ok按钮获知出问题的地方在哪里 总结 1.7 算法和程序的性能分析 1.7.2 时间复杂度 语句频度实例。有两个算法A1和A2求解同一问题,时间频度分别是T1(n)=100n2,T2(n)=5n3。 当输入量n<20时,有T1(n)>T2(n),后者花费的时间较少。 随着问题规模n的增大,两个算法的时间开销之比5n3/100n2=n/20亦随着增大。即当问题规模较大时,算法A1比算法A2要有效地多。 因此,用时间复杂度O(n2)和O(n3)能够更好地从宏观上评价这两个算法在时间方面的效率。 1.7 算法和程序的性能分析 1.7.2 时间复杂度 时间复杂度实例1。比如,交换i和j的内容。 temp=i; i=j; j=temp; 以上三个语句的频度均为1,该程序段的执行时间是一个与问题规模n无关的常数。算法的时间复杂度为常数阶,记作O(1)。 如果算法的执行时间不随着问题规模n的增加而增长,即使算法中有上千条语句,其执行时间也不过是一个较大的常数。此类算法的时间复杂度是O(1)。 1.7 算法和程序的性能分析 1.7.2 时间复杂度 时间复杂度实例2。比如,两个n阶方阵的乘积C=A×B中的主要部分。 先计算语句频度 算法语句 对应的语句频度 for(i=0;i n;i++) n+1 (用近似值n也可以) for (j=0;jn;j++) n(n+1)(用近似值n2也可以) { c[i][j]=0; n2 for (k=0
您可能关注的文档
最近下载
- 人教版(2024)七年级上册生物全册集体备课教案 .pdf
- YYT 1789.4-2022 体外诊断检验系统 性能评价方法 第4部分:线性区间与可报告区间.docx VIP
- 江西省临川第一中学2024-2025学年高一上学期开学考试历史试题(解析版).docx VIP
- 2023年汕头市投资控股集团有限公司人员招聘考试题库含答案解析.docx VIP
- 一种凝汽式汽轮机低压缸效率的在线计算方法.pdf VIP
- 口腔名词解释、大题.pdf VIP
- 《革命烈士诗抄》阅读试题及答案.docx VIP
- 招标代理投标文件.doc VIP
- 2022年汕头市投资控股集团有限公司校园招聘考试笔试试题及答案解析.docx VIP
- 2024年四川宜宾初中学业水平考试数学试卷真题(含答案详解).doc VIP
文档评论(0)