您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 交通运输 > C语言程序设计教程-王敬华-清华大学出版社--习题解答
第1章习题解答����学习要点学习要点学习要点学习要点•完成主教材中的全部习题。•熟悉C语言程序设计考试的各种题型�选择题、程序填空题、阅读程序写出运行结果题、编程题等。•注意综合运用数据类型、程序结构和典型算法。1.1习题1参考答案和解释1�简答题�1�冯·诺依曼计算机模型有哪几个基本组成部分�各部分的主要功能是什么�【参考答案】冯·诺依曼计算机模型是由运算器、控制器、存储器、输入设备、输出设备五大功能部件组成的。运算器又称算术逻辑部件�简称ALU�是计算机用来进行数据运算的部件。数据运算包括算术运算和逻辑运算。控制器是计算机的指挥系统�计算机就是在控制器的控制下有条不紊地协调工作的。存储器是计算机中具有记忆能力的部件�用来存放程序或数据。输入设备是用来输入程序和数据的部件。输出设备正好与输入设备相反�是用来输出结果的部件。�2�简述计算机的工作原理。【参考答案】计算机的工作原理可简单地概括为�各种各样的信息�通过输入设备�进入计算机的存储器�然后送到运算器�运算完毕把结果送到存储器存储�最后通过输出设备显示出来。整个过程由控制器进行控制。�3�计算机软件系统分为哪几类�【参考答案】软件内容丰富�种类繁多�通常根据软件用途将其分为两大类�系统C语言程序设计教程习题解答与实验指导2软件和应用软件。系统软件是指管理、监控、维护计算机正常工作和供用户操作使用计算机的软件。这类软件一般与具体应用无关�是在系统一级上提供的服务。系统软件主要包括以下两类�一类是面向计算机本身的软件�如操作系统、诊断程序等。另一类是面向用户的软件�如各种语言处理程序�像BC、VC等�、实用程序、字处理程序等。应用软件是指某特定领域中的某种具体应用�供最终用户使用的软件�它必须在操作系统的基础上运行。�4�什么叫软件�说明软件与硬件之间的相互关系。【参考答案】软件是指计算机程序及有关程序的技术文档资料。两者中更为重要的是程序�它是计算机进行数据处理的指令集�也是计算机正常工作最重要的因素。在不太严格情况下�认为程序就是软件。硬件与软件是相互依存的�软件依赖于硬件的物质条件�而硬件则需在软件支配下才能有效地工作。在现代�软件技术变得越来越重要�有了软件�用户面对的将不再是物理计算机�而是一台抽象的逻辑计算机�人们可以不必了解计算机本身�可以采用更加方便、更加有效地手段使用计算机。从这个意义上说�软件是用户与机器的接口。2�填空题�1�运算器通常又称为ALU�是计算机用来进行数据运算的部件。数据运算包括算术运算和逻辑运算。�2�目前计算机最常用的输入设备有键盘和鼠标。�3�计算机的CPU主要是由控制器和运算器构成的。�4�十进制的基数为10�二进制的基数为2。�5�在C语言中�表示一个八进制数用前缀0标记�表示一个十六进制数用前缀0x或0X标记。�6�机器数的三种表示形式是原码、反码和补码。�7�十进制数23和–23的8位二进制补码分别是00010111和11101001。�8�用8位二进制码表示有符号的定点整数�可表示的最大整数是127�最小整数是–128。3�选择题�1�计算机工作时�内存储器用来存储��。A�程序和指令B�数据和信号C�程序和数据D�ASCII码和数据【答案】C。【解释】计算机内存按所存信息的类别一般分为两大类�即程序和数据。程序是用来控制计算机完成某项任务的指令的集合�而数据是程序运行处理的对象。A只说明是程序。B和D只说明是数据。因为信号和ASCII码均为数据�所以选C。�2�语言编译程序若按软件分类则是属于��。第1章习题解答3A�系统软件B�应用软件C�操作系统D�数据库管理系统【答案】A。【解释】软件根据其用途分为两大类�系统软件和应用软件。各种语言的编译程序都是属于系统软件。C和D都是具体的软件�均属于系统软件。所以选A。�3�在计算机内一切信息的存取、传输和处理都是以��形式进行的。A�ASCII码B�二进制C�十进制D�十六进制【答案】B。【解释】计算机只能识别二进制数。所有的信息�包括指令和数据�都是以二进制形式来存放�也是以二进制形式来进行处理的。所以选B。�4�十进制数35转换成二进制数是��。A�100011B�0100011C�100110D�100101【答案】A。【解释】(35)10=(32)10+(3)10=(100000)2+(11)2=(100011)2�所以选A。�5�十进制数268转换成十六进制数是��。A�10BB�10CC�10DD�10E【答案】B。【解释】(268)10=(256)10+(12)10=(100000000)2+(1100)2=(100001100)2=(10C)16�所以选B。�6�下列无符号整数中最大的数是��。A�(10100011)2B�(FF)16C�(237)8D�789【答案】B。【解释】(10100011)2=(163)10�(FF)16=(65535)10�(237)8=(183)10�所以选B。�7�与二进制数0.1等值的十六进制小数为��。A�(0.2)16B�(0.1)16C�(0.4)16D�(0.8)16【答案】D。【解释】(0.1)2=(0.1000)10=(0.8)16�所以选D。�8�将250与5进行按位与的结果是��。A�0B�1C�(FF)16D�(F0)16【答案】A。【解释】(250)10&(5)10=(11111010)2&(00000101)2=(00000000)2=(0)10�所以选A。�9�将(AF)16与(78)16进行按位异或的结果是��。A�(D7)16B�(28)16C�(D8)16D�(27)16【答案】A。【解释】(AF)16^(78)16=(10101111)2^(01111000)2=(11010111)2=(D7)16�所以选A。�10�将(717)8进行按位求反的结果是��。A�(110001)2B�(060)8C�(60)10D�都不正确【答案】B。C语言程序设计教程习题解答与实验指导4【解释】~(717)10=~(111001111)2=(000110000)2=(060)8�所以选B。�11�将二进制数10110010的最高位求反的操作是��。A�与(7F)16按位与B�与(7F)16按位异或C�与(80)10按位或D�都不正确【答案】A。【解释】A�(10110010)2&(7F)16=(10110010)2&(01111111)2=(00110010)2B�(10110010)2^(7F)16=(10110010)2^(01111111)2=(11001101)2C�(10110010)2|(80)16=(10110010)2|(10000000)2=(10110010)2所以选A。严格来讲�应当是与(80)16按位异或为好。�12�将二进制数10110010的高4位求反�低4位不变的操作是��。A�与(0F)16按位与B�与(F0)16按位异或C�与(0F)10按位异或D�与(0F)16按位或【答案】B。【解释】高4位求反�可以将高4位与(1111)2进行按位异或得到�低4位不变�可将低4位与(0000)2进行按位异或得到�故可与(11110000)2进行按位异或来实现题目的要求。所以选择B。其他均不正确。1.2习题2参考答案和解释1�简答题�1�C语言有哪些特点�【参考答案】a�简洁紧凑、灵活方便b�运算符丰富c�数据结构丰富d�C语言是结构式语言e�C语言的语法限制不太严格、程序设计自由度大f�C语言允许直接访问物理地址�可以直接对硬件进行操作g�C语言程序生成代码质量高�程序执行效率高h�C语言适用范围大�可移植性好i�具有预处理功能j�具有递归功能�2�C语言的主要应用有哪些�【参考答案】a�许多系统软件和大型应用软件都是用C语言编写的�如UNIX�Linux等操作系统。b�在软件需要对硬件进行操作的场合�用C语言明显优于其他高级语言。例如�各种硬件设备的驱动程序�像显卡驱动程序、打印机驱动程序等�一般都是用C语言编第1章习题解答5写的。c�在图形、图像及动画处理方面�C语言具有绝对优势�特别是游戏软件的开发主要就是使用C语言。d�随着计算机网络飞速发展�特别是Internet的出现�计算机通信就显得尤其重要�而通信程序的编制首选就是C语言。e�C语言适用于多种操作系统�像Windows、UNIX、Linux等绝大多数操作系统都支持C语言�其他高级语言未必能得到支持�所以在某个特定操作系统下运行的软件用C语言编制是最佳选择。�3�列举几种程序设计语言。【参考答案】C语言、Java语言、Pascal语言、BASIC语言、LOGO语言等。�4�编写一个实现某种功能的C语言程序�必须经历哪几个步骤�【参考答案】a�C语言编程工具的安装b�程序编辑c�程序编译d�程序链接e�程序运行2�填空题�1�计算机程序设计语言的发展�经历了从机器语言、汇编语言到高级语言的历程。�2�计算机能惟一识别的语言是机器语言。�3�C语言最初是在ALGOL60语言的基础上发展而来的。�4�C语言程序是由多个函数构成的。�5�每个C语言程序中有且只有一个main函数�它是程序的入口和出口。�6�引用C语言标准库函数�一般要用#include预处理命令将其头文件包含进来。�7�用户自定义的函数�必须先定义后使用。�8�用户自定义函数包含两个部分�即声明部分和执行部分。声明部分在前�执行部分在后�这两部分的顺序不能颠倒�也不能有交叉。3�选择题�1�C语言属于��。A�机器语言B�低级语言C�中级语言D�高级语言【答案】D。【解释】机器语言是计算机惟一能识别的语言�是二进制语言�其他语言程序都必须将其编译为机器语言才能运行。低级语言是一种机器语言的符号化语言�像汇编语言。而其他语言一般是高级语言�C语言就是高级语言。所以选择D。C语言程序设计教程习题解答与实验指导6�2�C语言程序能够在不同的操作系统下运行�这说明C语言具有很好的��。A�适应性B�移植性C�兼容性D�操作性【答案】B。【解释】所谓移植性就是在某操作系统下编写的程序能够在其他操作系统下编译运行�而程序几乎不需要做任何修改。所以选择B。�3�一个C语言程序是由��。A�一个主程序和若干子程序组成B�函数组成C�若干过程组成D�若干子程序组成【答案】B。【解释】C语言程序是由函数构成的�所谓函数是指功能相对独立的可以反复执行的一段程序�在某些程序设计语言中也称为过程�但C语言中叫函数。所以选择B。�4�C语言规定�在一个源程序中�main函数的位置��。A�必须在最开始B�必须在系统调用的库函数的后面C�可以任意D�必须在最后【答案】C。【解释】根据C语言的规定�任何程序有且仅有一个main函数�main函数可以出现在程序的任何地方�没有位置的限制。所以选择C。�5�C语言程序的执行�总是起始于��。A�程序中的第一条可执行语句B�程序中的第一个函数C�main函数D�包含文件中的第一个函数【答案】C。【解释】在一个C语言源程序中�无论main函数书写在程序的前部�还是后部�程序的执行总是从main函数开始�并且在main函数中结束。所以选择C。�6�下列说法中正确的是��。A�C语言程序书写时�不区分大小写字母B�C语言程序书写时�一行只能写一个语句C�C语言程序书写时�一个语句可分成几行书写D�C语言程序书写时每行必须有行号【答案】C。【解释】C语言严格区分大小写字母�如A1和a1被认为是两个不同的标识符�C语言程序的书写非常灵活�既可以一行多句�又可以一句多行�且每行不加行号。所以选择C。�7�以下叙述不正确的是��。A�一个C源程序可由一个或多个函数组成B�一个C源程序必须包含一个main函数C�C语言程序的基本组成单位是函数D�在C语言程序中�注释说明只能位于一条语句的后面【答案】D。第1章习题解答7【解释】C语言是由函数组成的�且有且仅有一个main函数�所以C语言程序的基本组成单位是函数。故A、B、C的说法都是正确的。对于C语
本文标题:C语言程序设计教程-王敬华-清华大学出版社--习题解答
链接地址:https://www.777doc.com/doc-3888594 .html