c语言程序设计.(郑莉)课后习题答案

上传人:第*** 文档编号:58562009 上传时间:2018-10-30 格式:DOC 页数:89 大小:452.50KB
返回 下载 相关 举报
c语言程序设计.(郑莉)课后习题答案_第1页
第1页 / 共89页
c语言程序设计.(郑莉)课后习题答案_第2页
第2页 / 共89页
c语言程序设计.(郑莉)课后习题答案_第3页
第3页 / 共89页
c语言程序设计.(郑莉)课后习题答案_第4页
第4页 / 共89页
c语言程序设计.(郑莉)课后习题答案_第5页
第5页 / 共89页
点击查看更多>>
资源描述

《c语言程序设计.(郑莉)课后习题答案》由会员分享,可在线阅读,更多相关《c语言程序设计.(郑莉)课后习题答案(89页珍藏版)》请在金锄头文库上搜索。

1、C+C+语言程序设计语言程序设计( (清华大学郑莉清华大学郑莉) )课后习题答案课后习题答案 第第 一一 章章 概述概述 1-11-1 简述计算机程序设计语言的发展历程。简述计算机程序设计语言的发展历程。 解:解: 迄今为止计算机程序设计语言的发展经历了机器语言、汇编语迄今为止计算机程序设计语言的发展经历了机器语言、汇编语 言、高级语言等阶段,言、高级语言等阶段,C+C+语言是一种面向对象的编程语言,语言是一种面向对象的编程语言, 也属于高级语言。也属于高级语言。 1-21-2 面向对象的编程语言有哪些特点?面向对象的编程语言有哪些特点? 解:解: 面向对象的编程语言与以往各种编程语言有根本的

2、不同,它设面向对象的编程语言与以往各种编程语言有根本的不同,它设 计的出发点就是为了能更直接的描述客观世界中存在的事物以计的出发点就是为了能更直接的描述客观世界中存在的事物以 及它们之间的关系。面向对象的编程语言将客观事物看作具有及它们之间的关系。面向对象的编程语言将客观事物看作具有 属性和行为的对象,通过抽象找出同一类对象的共同属性(静属性和行为的对象,通过抽象找出同一类对象的共同属性(静 态特征)和行为(动态特征)态特征)和行为(动态特征) ,形成类。通过类的继承与多态,形成类。通过类的继承与多态 可以很方便地实现代码重用,大大缩短了软件开发周期,并使可以很方便地实现代码重用,大大缩短了软

3、件开发周期,并使 得软件风格统一。因此,面向对象的编程语言使程序能够比较得软件风格统一。因此,面向对象的编程语言使程序能够比较 直接地反问题域的本来面目,软件开发人员能够利用人类认识直接地反问题域的本来面目,软件开发人员能够利用人类认识 事物所采用的一般思维方法来进行软件开发。事物所采用的一般思维方法来进行软件开发。C+C+语言是目前语言是目前 应用最广的面向对象的编程语言。应用最广的面向对象的编程语言。 1-31-3 什么是结构化程序设计方法?这种方法有哪些优点和缺点?什么是结构化程序设计方法?这种方法有哪些优点和缺点? 解:解: 结构化程序设计的思路是:自顶向下、逐步求精;其程序结构结构化

4、程序设计的思路是:自顶向下、逐步求精;其程序结构 是按功能划分为若干个基本模块;各模块之间的关系尽可能简是按功能划分为若干个基本模块;各模块之间的关系尽可能简 单,在功能上相对独立;每一模块内部均是由顺序、选择和循单,在功能上相对独立;每一模块内部均是由顺序、选择和循 环三种基本结构组成;其模块化实现的具体方法是使用子程序。环三种基本结构组成;其模块化实现的具体方法是使用子程序。 结构化程序设计由于采用了模块分解与功能抽象,自顶向下、结构化程序设计由于采用了模块分解与功能抽象,自顶向下、 分而治之的方法,从而有效地将一个较复杂的程序系统设计任分而治之的方法,从而有效地将一个较复杂的程序系统设计

5、任 务分解成许多易于控制和处理的子任务,便于开发和维护。务分解成许多易于控制和处理的子任务,便于开发和维护。 虽然结构化程序设计方法具有很多的优点,但它仍是一种面向虽然结构化程序设计方法具有很多的优点,但它仍是一种面向 过程的程序设计方法,它把数据和处理数据的过程分离为相互过程的程序设计方法,它把数据和处理数据的过程分离为相互 独立的实体。当数据结构改变时,所有相关的处理过程都要进独立的实体。当数据结构改变时,所有相关的处理过程都要进 行相应的修改,每一种相对于老问题的新方法都要带来额外的行相应的修改,每一种相对于老问题的新方法都要带来额外的 开销,程序的可重用性差。开销,程序的可重用性差。

6、由于图形用户界面的应用,程序运行由顺序运行演变为事件驱由于图形用户界面的应用,程序运行由顺序运行演变为事件驱 动,使得软件使用起来越来越方便,但开发起来却越来越困难,动,使得软件使用起来越来越方便,但开发起来却越来越困难, 对这种软件的功能很难用过程来描述和实现,使用面向过程的对这种软件的功能很难用过程来描述和实现,使用面向过程的 方法来开发和维护都将非常困难。方法来开发和维护都将非常困难。 1-41-4 什么是对象?什么是面向对象方法?这种方法有哪些特点?什么是对象?什么是面向对象方法?这种方法有哪些特点? 解:解: 从一般意义上讲,对象是现实世界中一个实际存在的事物,它从一般意义上讲,对象

7、是现实世界中一个实际存在的事物,它 可以是有形的,也可以是无形的。对象是构成世界的一个独立可以是有形的,也可以是无形的。对象是构成世界的一个独立 单位,它具有自己的静态特征和动态特征。面向对象方法中的单位,它具有自己的静态特征和动态特征。面向对象方法中的 对象,是系统中用来描述客观事物的一个实体,它是用来构成对象,是系统中用来描述客观事物的一个实体,它是用来构成 系统的一个基本单位,由一组属性和一组行为构成。系统的一个基本单位,由一组属性和一组行为构成。 面向对象的方法将数据及对数据的操作方法放在一起,作为一面向对象的方法将数据及对数据的操作方法放在一起,作为一 个相互依存、不可分离的整体个相

8、互依存、不可分离的整体-对象。对同类型对象抽象出其对象。对同类型对象抽象出其 共性,形成类。类中的大多数数据,只能用本类的方法进行处共性,形成类。类中的大多数数据,只能用本类的方法进行处 理。类通过一个简单的外部接口,与外界发生关系,对象与对理。类通过一个简单的外部接口,与外界发生关系,对象与对 象之间通过消息进行通讯。这样,程序模块间的关系更为简单,象之间通过消息进行通讯。这样,程序模块间的关系更为简单, 程序模块的独立性、数据的安全性就有了良好的保障。通过实程序模块的独立性、数据的安全性就有了良好的保障。通过实 现继承与多态性,还可以大大提高程序的可重用性,使得软件现继承与多态性,还可以大

9、大提高程序的可重用性,使得软件 的开发和维护都更为方便。的开发和维护都更为方便。 面向对象方法所强调的基本原则,就是直接面对客观存在的事面向对象方法所强调的基本原则,就是直接面对客观存在的事 物来进行软件开发,将人们在日常生活中习惯的思维方式和表物来进行软件开发,将人们在日常生活中习惯的思维方式和表 达方式应用在软件开发中,使软件开发从过分专业化的方法、达方式应用在软件开发中,使软件开发从过分专业化的方法、 规则和技巧中回到客观世界,回到人们通常的思维。规则和技巧中回到客观世界,回到人们通常的思维。 1-51-5 什么叫做封装?什么叫做封装? 解:解: 封装是面向对象方法的一个重要原则,就是把

10、对象的属性和服封装是面向对象方法的一个重要原则,就是把对象的属性和服 务结合成一个独立的系统单位,并尽可能隐蔽对象的内部细节。务结合成一个独立的系统单位,并尽可能隐蔽对象的内部细节。 1-61-6 面向对象的软件工程包括哪些主要内容?面向对象的软件工程包括哪些主要内容? 解:解: 面向对象的软件工程是面向对象方法在软件工程领域的全面应面向对象的软件工程是面向对象方法在软件工程领域的全面应 用,它包括面向对象的分析(用,它包括面向对象的分析(OOAOOA) 、面向对象的设计(、面向对象的设计(OODOOD) 、 面向对象的编程(面向对象的编程(OOPOOP) 、面向对象的测试(、面向对象的测试(

11、OOTOOT)和面向对象)和面向对象 的软件维护(的软件维护(OOSMOOSM)等主要内容。)等主要内容。 1-71-7 简述计算机内部的信息可分为几类?简述计算机内部的信息可分为几类? 解:解: 计算机内部的信息可以分成控制信息和数据信息二大类;控制计算机内部的信息可以分成控制信息和数据信息二大类;控制 信息可分为指令和控制字两类;数据信息可分为数值信息和非信息可分为指令和控制字两类;数据信息可分为数值信息和非 数值信息两类。数值信息两类。 1-81-8 什么叫二进制?使用二进制有何优点和缺点?什么叫二进制?使用二进制有何优点和缺点? 解:解: 二进制是基数为二进制是基数为 2 2,每位的权

12、是以,每位的权是以 2 2 为底的幂的进制,遵循逢为底的幂的进制,遵循逢 二进一原则,基本符号为二进一原则,基本符号为 0 0 和和 1 1。采用二进制码表示信息,有。采用二进制码表示信息,有 如下几个优点:如下几个优点:1.1.易于物理实现;易于物理实现;2.2.二进制数运算简单;二进制数运算简单;3.3.机机 器可靠性高;器可靠性高;4.4.通用性强。其缺点是它表示数的容量较小,表通用性强。其缺点是它表示数的容量较小,表 示同一个数,二进制较其他进制需要更多的位数。示同一个数,二进制较其他进制需要更多的位数。 1-91-9 请将以下十进制数值转换为二进制和十六进制补码:请将以下十进制数值转

13、换为二进制和十六进制补码: (1 1)2 2 (2 2)9 9 (3 3)9393 (4 4)-32-32 (5 5)6553565535 (6 6)-1-1 解:解: (1 1) (2 2)1010 = = (1010)2 2 = = (2 2)1616 (2 2) (9 9)1010 = = (10011001)2 2 = = (9 9)1616 (3 3) (9393)1010 = = (10111011011101)2 2 = = (5D5D)1616 (4 4) (-32-32)1010 = = (1110000011100000)2 2 = = (E0E0)1616 (5 5) (

14、6553565535)1010 = = (1111111111111111 1111111111111111)2 2 = = (FFFFFFFF) 1616 (6 6) (-1-1)1010 = = (1111111111111111 1111111111111111)2 2 = = (FFFFFFFF)1616 1-101-10 请将以下数值转换为十进制:请将以下数值转换为十进制: (1 1) (10101010)2 2 (2 2) (1000111110001111)2 2 (3 3) (0101111101011111 1100001111000011)2 2 (4 4) (7F7F)1

15、616 (5 5) (2D3E2D3E)1616 (6 6) (F10EF10E)1616 解:解: (1)(1)(10101010)2 2 = = (1010)1010 (2)(2)(1000111110001111)2 2 = = (143143)1010 (3)(3)(0101111101011111 1100001111000011)2 2 = = (2451524515)1010 (4)(4)(7F7F)1616 = = (127127)1010 (5)(5)(2D3E2D3E)1616 = = (1158211582)1010 (6)(6)(F10EF10E)1616 = = (6

16、171061710)1010 1-111-11 简要比较原码、反码、补码等几种编码方法。简要比较原码、反码、补码等几种编码方法。 解:解: 原码:将符号位数字化为原码:将符号位数字化为 0 0 或或 1 1,数的绝对值与符号一起编,数的绝对值与符号一起编 码,即所谓码,即所谓“ “符号符号绝对值表示绝对值表示“ “的编码。的编码。 正数的反码和补码与原码表示相同。正数的反码和补码与原码表示相同。 负数的反码与原码有如下关系:负数的反码与原码有如下关系: 符号位相同符号位相同( (仍用仍用 1 1 表示表示) ),其余各位取反,其余各位取反(0(0 变变 1 1,1 1 变变 0)0)。 补码由该数反码的最末位加补码由该数反码的最末位加 1 1 求得。求得。 第第 二二 章章 C+C+

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 事务文书

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号