缺陷和测试

缺陷

 一个熟练的程序员花在调试代码上的时间和花

在写程序上的时间一样多

错误类型

 语法错误

 违反了编程语言有关规则

 编译器能够精确指出错误出现在哪一行

 语义及逻辑错误

 没有语法错误,可以运行,但是得不到正确的

结果

 “语义错误”

 程序的运行结果与程序员的期望不同

 “逻辑错误”

 程序按照程序员所设计的有缺陷的算法运行,运行结

果与程序员的期望相同

语法错误示例

#include

int main() 缺少分号

{

int i

int sum = 0;

for (i = 1; i <= 10; i++)

sum = sum + i;

printf("sum = %d\n", sum);

}

常见的语法错误

 声明、语句末尾漏写分号;

 使用未经声明的变量;

 括号不匹配;

 字符串没有结束符;

 赋值运算符左边不是变量;

 … …

语义错误示例

#include

int main()

{

int i;

int sum = 0; 多余的分号

for (i = 1; i <= 10; i++);

sum = sum + i;

printf("sum = %d\n", sum);

}

常见的语义错误

 赋值运算符与相等运算符用错;

 无限循环;

 在 if、while或for结构后面使用多余的分号;

 错误地使用了关系运算符;

 计算或将一个大类型的数转换成小类型时,数据的值超出了

表示范围;

 运算符优先顺序错;

 else搭配不当;

 off-by-one (偏一)错误,通常指for循环的次数多或少一

次;

 将无关代码放到循环体中;

 使用整数除法;

 ……

逻辑错误

 非常隐蔽,需要经过多次测试才会被发现

 很难修复

逻辑错误示例

#include case 8: sum = sum + 31;

int main() case 7: sum = sum + 30;

{ case 6: sum = sum + 31;

int month;

case 5: sum = sum + 30;

int day;

case 4: sum = sum + 31;

int sum = 0;

case 3: sum = sum + 28;

case 2: sum = sum + 31;

printf ("Inp

计算机系统缺陷,4.2 缺陷和测试计算机操作系统原理.pdf相关推荐

  1. 计算机电路门,7.3 门电路计算机操作系统原理.pdf

    门电路 门电路  MOS晶体管,实现与.或.非逻辑运算电路  与门.或门.非门电路 非门(反相器) 3.3伏  栅极连在一起, 输入端  漏极连在一起, 输入 输出 输出端  PMOS管源极 ...

  2. 计算机操作系统的工作原理英文,计算机操作系统原理分析

    <计算机操作系统原理分析>是2014年清华大学出版社出版的图书,作者是丁善镜[1] . 书    名 计算机操作系统原理分析 作    者 丁善镜 ISBN 9787302284710定  ...

  3. 计算机操作系统原理教程与实训(目录)

    计算机操作系统原理教程与实训 第一章 计算机操作系统概论 1.1 操作系统的形成与发展 1.1.1 人工操作方式 1.1.2 脱机输入/输出技术 1.1.3 批处理技术 1.1.4 多道程序设计技术 ...

  4. 计算机操作系统原理精品课程,计算机操作系统原理.ppt

    计算机操作系统原理.ppt 1 第五章??? 设备管理 教学目的和要求: 使学生了解操作系统处理用户I/O请求的基本过程.要求理解缓冲技术的概念.了解操作系统处理用户I/O请求的基本过程.设备管理程序 ...

  5. 视频教程-2021考研专业课《计算机操作系统原理》精讲视频课程-操作系统

    2021考研专业课<计算机操作系统原理>精讲视频课程 河北师范大学软件学院优秀讲师,项目经理资质,担任操作系统原理.软件工程.项目管理等课程教学工作.参与十个以上百万级软件项目管理及系统设 ...

  6. 计算机操作系统原理课件,【】计算机操作系统原理与实例分析PPT课件(完整版 全)精品.ppt...

    []计算机操作系统原理与实例分析PPT课件(完整版 全)精品 4.2 计算机I/O子系统的组成 4.2.1 I/O系统的结构 (1) 总线型I/O系统的结构 总线型I/O系统结构 (2) 通道型I/O ...

  7. 计算机操作系统原理第二章习题

    计算机操作系统原理第二章习题 1.什么是并发?什么是并行?用日常生活中的例子举例说明. 2.在操作系统中为什么要引入进程的概念?它会产生什么样的影响? 3.试说明PCB的作用具体表现在那些方面?为什么 ...

  8. 2013年暑期补课计算机操作系统原理

    2013年暑期补课计算机操作系统原理 什么是操作系统?计算机是如何工作的?操作系统又是如何在计算机上运行的?从这些基本的问题出发,我们一起探索操作系统的奥秘,并动手编写一个自己的操作系统内核,在这个过 ...

  9. 计算机操作系统原理第四章习题

    计算机操作系统原理第四章习题 1.什么是静态链接.装入时动态链接和运行时的动态链接? 2.简述分页系统和分段系统的异同点 3.什么情况下需要重定位?为什么要引入重定位? 4.在具有快表的段页式存储管理 ...

  10. 计算机系统操作在线作业,电子科大《计算机操作系统》在线作业3

    计算机操作,计算机网络 14春13秋 13春电子科大<计算机操作 14春13秋 13春电子科大<计算机操作系统>在线作业3 1 2 试卷总分:100 测试时间:-- 单选题 .单选题 ...

最新文章

  1. python3爬虫实例-Python3 爬虫实例(一)-- 简单网页抓取
  2. TCP模拟QQ聊天案例
  3. 树莓派学习 -- 无法扫描出树莓派IP
  4. H264 流媒体 编码汇总
  5. 华为机试——进制转换
  6. mysql5性能比较_MySQL 5.7&MySQL 8.0 性能对比
  7. 碎裂效果尝试(clip-path篇)
  8. 高并发与负载均衡-nginx-反向代理概念
  9. 生成、打包、部署和管理应用程序及类型(2):元数据概述
  10. iPhone唯一标识符
  11. tensorflow实现残差网络(mnist数据集)
  12. CSDN怎么获取下载积分
  13. 陶哲轩:一个华裔数学天才的传奇
  14. 计算机毕业设计-基于SSM的酒店客房管理系统-JavaWeb酒店客房管理系统
  15. python中isupper是什么意思_Python string isupper()用法及代码示例
  16. Android关于Activity屏蔽/拦截Home键
  17. 现金的消亡与货币的未来之战 |链捕手
  18. html去除图片背景颜色,canvas实现图片背景色去色变透明 » 张鑫旭-鑫空间-鑫生活...
  19. poj 3274 数的哈希
  20. 如何在linux centos 环境下运行.exe文件

热门文章

  1. 各种强大的资源搜索引擎及搜索各大网盘资源的方法
  2. OSPF计算环路:RFC:2328与RFC1583
  3. a中嵌套div的问题
  4. ASP.NET基础教程-利用javascript将光标定位到文本框
  5. 数学建模python matlab 编程(指派问题)
  6. USES_CONVERSION W2A
  7. 【redis】spring boot利用redis的Keyspace Notifications实现消息通知
  8. Linux 2.6内核Makefile浅析
  9. Wireshark-Mac下找不到本地网卡
  10. thinkphp路径引用问题