选课类别:核心通识 | 教学类型:实验课 |
课程类别:一般通识 | 开课单位:计算机科学与技术系 |
课程层次:自由选修 | 学分:1.0 |
所谓程序调试是指对程序的查错和排错,本课程主要介绍程序的逻辑错误例如功能、输入和输出不符合需求分析。调试程序一般应经过以下几个步骤:
一、先进行人工检查,即静态检查。
①应当采用结构化程序方法编程,以增加可读性;
②合理注释,以帮助理解每段程序的作用;
③注意编码规范的实践。
二、在人工检查无误后,再上机调试发现语法错误。
通过上机发现词法语法错误称为动态检查,在编译时会给出语法错误的信息,调试时可以根据提示信息具体找出程序中出错之处并改正。运行程序,输入程序所需数据,就可得到运行结果。要进行仔细而周全的测试和分析,如果发现错误,这部分错误是最难查找和排除的。
三、运行结果不对,大多属于逻辑错误。对这类错误往往需要仔细检查和分析才能发现。可以采用以下办法:
1.将程序与流程图仔细对照,如果流程图是正确的,程序写错了,是很容易发现的。例如,复合语句忘记写花括弧,只要一对照流程图就能很快发现。
2.如果实在找不到错误,可以采用“分段检查”的方法。在程序不同的位置设几个printf函数语句,输出有关变量的值,逐段往下检查。直到找到在某一段中数据不对为止。这时就已经把错误局限在这一段中了。不断减小“查错区”,就能发现错误所在。
3.也可以用“条件编译”命令进行程序调试(在程序调试阶段,若干printf函数语句就要进行编译并执行。当调试完毕,这些语句不用再编译了,也不再被执行了)。这种方法可以不必一一去掉printf函数语句,以提高效率。
4.如果在程序中没有发现问题,就要检查流程图有无错误,即算法有无问题。如有则改正之,接着修改程序。
5.推荐使用各种语言编辑编译器提供的debug(调试)工具,跟踪程序并给出相应信息,使用更为方便,这是本课程要介绍的核心内容。
没有期末考试,总评有10分是考勤,会有几节课点名,剩下的90分是实验
课程是许老师和陈老师轮流上,主要内容是调试、汇编、黑客技术,也会有几节实验课
没有教材,每节课会发课件
个人感觉课容量还是比较大的,有些章节对于没有基础的大一新生来说还是有些困难的,但是老师讲的很详细,课件也很清楚,实验作业里也没有涉及到难的部分
14节课一共布置了7次实验,每次实验的期限是一周,发到助教邮箱,内容是调试分析错因,makefile多文件编译,一些基础的汇编知识,相比于课上内容来说是很简单的,即使上课没有听懂看课件也是可以掌握的
这门课是三节课的课程,一般不到两节课就可以讲完,剩下的时间就是去做实验
实验的具体评分细则不清楚,不过每次实验及时交分数应该不会低的
个人感觉这门课是可以选的