电大面向对象的程序设计
一、单项选择题
1、 下面那种结构不是C+ +的控制结构 A 顺序结构 B 选择结构 C 循环结构 D 判断结构 答: D
2、 下列是C++语言中合法标识符的是( A. 3three B.if C._1one D.while 答:C 3、
A. if(x>0) then x=x-1;else x=x+1; B. if(x>0) x=x-1;else x=x+1; C. if x>0 x=x-1;else x=x+1; D. if x>0 x=x-1; 答: B
4、 下面那一种不是计算机内部表示整数的方法( A 二进制码 B 原码 C 补码 D 反码 答: A 5、 ) A.5E-3 C. E5 答: A
6 C++语言中数据类型最大的是( A long B float C int D char 答: B
第 1 页 )
B.5E-3.5 D.-3.5E
在C++语言中,下列数为合法的实数的是()
下列是合法的C++语言语句的是( )o
)o
(
)
7、如果一个函数可以在定义中直接或间接的调用自己,这样的函数称为(
A.函数声明 B.嵌套函数 C.定义函数
D.递归函数
答:D
8、表达式0x55SxB4的结果为(
)
A.0xF5 B.0x15 C.0xE1
D.0x1E
答: C
9、C+ +中,源代码文件后缀为 ( )
A .cpp B .obj
C .exe D .c
答:
A
10、 0X5A&0XB7 结果是 ( )
A 0X13 B 0X12 C 0X14 D 0X15
答: B
二、填空题
1、程序的基本控制结构包括(
)、( )。
答:顺序结构,选择结构,循环结构
2、用来解决问题的,与有限多个步骤组成的具体过程称为( 答: 算法
3、 整数类型变量a和b被初始化为3和10,则循环语句while次,执行完语句后a的值为( ),b的的值为(
答:4,11,10
4、 在程序编译阶段的错误主要分为两类( 答:警告信息,致命错误
第 2 页
a<=b))。
)和()和
)。
共执行( )。( a=a+2;
)
5、计算机中的数据可以分为(
)和( )两大类。
答: 数值型、字符型
6、字符型 数据有两种编码方 法:( ()
答: 有美国国家标准局制定的 ASCII 码、 IBM 公司提出的 EBCDIC 码 7、通过 C++ 语言中的 ( ) 机制,可以从现存类中构建其子类。 答: 继承(或派生)
)和
8、 封装要求一个对象应具备明确的功能,并具有 ( ) 以便和其它对象相互作用。 答: 接口〈或界面、或公有成员〉
9、软件工程中认为影响一个程序质量的主要因素包括(
)、( )、(
)、( )和( )等方面。而面向对象的程序设计特别强调软件质量 的两个方面( )和(
)。 答:正确性,健壮性,可扩展性,可重用性,有效性,语法与语义的可靠性,结构方面的
可扩展性与 可重用性 10、15/3=(
) , 16/3=(
) ,
15%3=(
), 16%3=(
)
答: 5、5、0、1
11、 0XB4<<2 及 10110100向左连移两次,结果为( 右连移动两次,逻辑右移的结果为( ),即 0X2D 答: 11010000、00101101 12、一种语言主要由( 答: 语法、语义
13、为了让编译程序了解数据所属的类型,同常程序设计语言都尊循“ ( )”的原则。 答: 先申明,后使用
14、C++语言中的数据可分为( 答: 常量、变量
)和(
)两大类。
)和( )两部分组成。
),即 0XD0,0XB4>>2 即 10110100向
三、判断题
1、结构化程序设计方法的主要技术是自顶向下、 逐步求精,采用单入口 /单出口的控制结构。( 答: 对
)
第 3 页
2、程序中以“ //”开头直至该行行尾的内容成为注释,用于说明或者解释程序的功能。 ( ) 答: 对 3、 组成C + +程序的最小单位是单词,C++程序有5种单词,保留字,标志符、常量、运算符和分 界符。( ) 答: 对
4、 C+ +中,对基本数据类型的常量与变量进行加工的过程成为运算,表示各种不同运算的符号成 为运算符,参与运算的数据成为操作数。 ( 答: 对 5、
是(a ? ( b=0) :b)= 1) 答: 对
表达式a ? b=O:b= 1 的求值次序(
)
)
四、简答题
1、 面向对象的程序设计有那些基本特征?
答:在面向对象程序中, 将现实世界的实体抽象成为对象, 不同对象之间的相互作用和相互通信构成 了完整的客观世界。它的基本特征包括: (1)数据的封装,数据封装将一类数据和与这类数据有关的 操作集合封装在一起, 形成一个能动的实体成为对象。 用户不必知道对象行为的实现细节, 只需根据 对象提供的外部特性接口访问对象,这反映了数据抽象数据类型的思想。 ( 2)继承,类支持层次的模 型结构,低层次的类(子类)可以从他的高层次类(基类、父类)中继承所有的数据或操作,并扩充 自己的特殊数据和操作。 继承可以使不同的对象的共同性质只需定义一次, 用户可以充分利用已有的 类,符合软件重用的目标。 ( 3)多态性,用户在使用函数或对象编程时,关心的是该函数或对象的功 能和使用界面,并不需要了解该函数或对象的使用与哪一种实现方法匹配,在面向对象程序设计中, 程序员可为同一函数或对象提供多种不同的实现,以适合不同的场合。
2、 什么是内联函数?使用内联函数有什么好缺点?
答:( 1)内联函数:在编译时将所调用的函数代码直接嵌入到调用函数的调用处,而不是将程序流程 转出去,这种嵌入到调用函数中的函数就称为内联函数。 (2)优点:避免小规模函数调用的开销(参 数传递、上下文切换、空间开销) ,提高程序的执行效率; (3)缺点:如果内联函数的开销不是整个 程序执行时间的主要部分, 它的优点就不明显; 内联函数加大了可执行程序, 可能导致额外的内存交 换而实际降低了执行速度。
第 4 页
3、什么是程序断言?在程序中使用断言主要有什么作用? 答:(1)程序断言:为在程序中反映程序编译运行的正确性与需求说明的一致性,而在程序中加入描 述程序需求说明的表达式称为程序断言。 ( 2)作用:保证程序的正确性与健壮性;断言可用于形成程 序的文档;支持程序的动态调试;构成异常处理的基础。
4、简述实体、对象和类的概念以及他们之间的关系。 答:(1)概念:实体,现实世界中的物理实体;对象:具有类类型的变量称为对象,也就是现实世界 中某个具体的物理实体在计算机逻辑中的映射和体现。 类:对一组具有相同属性、 表现相同行为的对 象的描述。(2)关系:实体与对象,是现实与计算机的逻辑映射;对象与类,类是具有一定共性的对 象的抽象,类的某一个实例就是对象。 5、什么是变量的作用域和生存期?什么是局部变量和全局变量?
答:( 1)作用域:在变量被创建之后,变量的名字能被引用的地方。 (2)生存期:在程序的执行过程 中变量实际占用内存或寄存器的时间。 变量的生存期是由声明变量时选择的存储类别决定的。 (3)局 部变量:在函数内(块作用域中)声明的变量。只有在定义他们的函数(块语句中)才可见并允许修 改,如果不使用特殊的访问方式,任何其他函数都不能访问或修改变量。
( 4)全局变量:在文件作用
域中声明的变量。在函数定义外声明,从不属于任何函数,从被定义开始,在整个文件范围内有效, 可以被不同的函数使用。
五、应用题
1、讲用户输入的 24小时制时间转换为 12 小时制时间,写出其算法 解答:# include
Void mian( )
{
Int hour; Char noo='A';
Cout<<”enter the hour please”:; Cin>>hour; If (hour>12){ Hour=hour-12; Noo n='P';
}
第 5 页