admin 管理员组文章数量: 1184232
2024年2月18日发(作者:水果捞一般用哪几种水果)
面向对象程序设计习题-填空题
1.在计算机中书写C++语言程序需要用到( 编辑器 )程序。
2.( 链接程序 )将编译器输出和各种库函数结合起来,可产生可执行程序。
3.C++语言是面向( 对象 )的语言。
4.C语言是广为人知的( UNIX )操作系统语言。
5.唯一能让计算机直接理解的语言称为计算机的(机器语言)。
6.面向结构的程序设计方法主要由以下3种逻辑结构组成:顺序结构、( 循环结构 )和( 选择结构 )。
7.面向对象的程序设计达到了软件工程的3个目标,即( 重用性 )、灵活性和扩展性。
8.面向对象系统最主要的特性是( 封装性 )、( 继承性 )和多态性。
9.( 继承 )机制为程序提供了一种组织、构造和重用类的手段。
10.( 多态 )指对象接收到不同消息时产生不同的行为方式。
11.每一个C++语言程序从( main )函数处开始执行。
12.每个函数体从( { )开始,从( } )结束。
13.每个C++语言语句以( ; )结束。
14.( cin )对象通过键盘输入值。
15.( // )用于为程序做单行注解,提高程序的可读性。
16.( cout )用于在屏幕上打印信息。
17.C++语言使用运算符“<<”和“>>”分别实现( 输入 )和( 输出 )。
18.预处理器指令以( # )符号开头。
19.标准命名空间可以简写成为( std )。
20.为了使用C++语言的标准字符串类,必须要包含头文件( string )。
21.布尔型是最简单的数据类型,它有两种表示形式:( true )和( false )。
22.声明枚举的关键字是( enum )。
23.C++语言的数据类型十分丰富,包括基本数据类型、( 派生类型 )和( 类类型 )。
24.按照存储空间,整型又可分为短整型、( 整型 )和( 长整型 )。
25.C++语言中的( sizeof )运算符,可以用来计算一个特定对象或类型存储时需要的字节数。
26.浮点类型取值范围的定义包含在标准头文件( climits )中。
27.在程序运行过程中,有些值会保持不变,称之为( 常量 )。
28.C++语言通常使用( const )来定义常量。
29.C++语言是一种( 强类型 )的语言,要求所有变量都必须先定义后使用。
30.在标准C++中,int型数据的长度要依靠机器的( 字长 ),也就是说,如果机器是32位的,int的标准长度就是32位;如果机器是64位的,int的标准长度就是64位。
31.char、int、double数据所占存储空间大小一般情况下(以字节为单位)分别是(1字节 )、( 4字节 )和( 8字节 )。
32.为下面的变量指定最佳的变量类型。
(1)以米为单位的房间面积。( float )(2)一小时内通过学校门口的车辆数量。( int )(3)人的名字。( string )
33.所有程序都可以用3种控制结构编写,即( 顺序 )、( 选择 )和( 循环 )。
34.( if else )选择语句在条件为真时执行某动作,在条件为假时执行另一动作。
35.一组指令重复执行指定次数的循环称为( for )循环。
36.当一组语句事先不知道重复执行的次数时,可以用一个( while )值来结束循环。
37.( if )表达式的值要么是true,要么是false。
38.if语句有3种不同形式的语法:( if )、( if else )和if-else-if形式。
39.( == )运算符用于判断两个值是否相等。
40.多路选择语句除了if-else-if以外,还有( switch )语句。
41.控制变量从1~100,每次增量为5,语句如下:for(int i=1;i<=100;( i=i+5 ))。
42.转向语句包括break语句、( continue )和goto语句。
43.函数头double sum(int a,int b)中,a和b叫做(形参),函数返回值是(double )类型的。
44.( void )关键字用来表示函数没有返回值。
45.根据下面函数的定义,回答下列问题。
int what(int n) {
return (n*(n+1))/2;
}
如果主函数有number=what(number2)语句,则函数调用中的number2叫做(实参 )。
如果主函数有int number=what(3)语句,则最后赋给number的值为( 6 )。
46.默认的函数参数传递机制是( 值传递 )。
47.如果函数的形参为非引用类型,调用函数时将会( 复制 )实参的值。
48.如果一个( 非引用 )参数在函数体中值被改变,它对应的实参值不会改变。
49.在参数类型和参数名称之间写一个( & ),表示它是一个引用参数。
50.C++语言中,可能有多个函数具有相同的名字,但其参数类型或参数个数不同,这称为函数( 重载 )。
51.如果一个库函数是内联的,那么该函数必须在库的( 头 )文件中定义。
52.直接或者间接地(即通过另外一个函数)调用自身的函数称为( 递归 )函数。
53.在所有的语句块和函数外声明的变量是( 全局 )变量。
54.数组中的元素是相关的,它们有相同的( 数组名)和( 类型 )。
55.应使用( const int )来声明数组的大小,这样可使程序更易于扩展。
56.使用两个下标的数组称为( 二维 )数组。
57.数组p(int p[4])中,4个元素的名称分别是( p[0] )、(p[1] )、( p[2] )和( p[3] )。
58.按照惯例,二维数组中,第一个下标标识元素的( 行 ),第二个下标标识元素的( 列 )。
59.定义数组时,数组长度必须是大于0的正整数,而且只能用( 常量 ),不能用( 变量 )。
60.如果一个char数据类型占用1个字节,那么长度为10的char类型一维数组会占用( 10 )字节。
61.string对象可以直接相加,使用( + )操作符。
62.为下述要求编写数组声明
(1)数组names,元素类型为字符串,长度为100。( string names[100]; )
(2)数组checks,元素类型为float,长度为20。( float checks[20]; )
(3)数组madeBonus,元素类型为bool,长度为7。( bool madeBonus[7]; )
(4)数组daysInMonth,元素类型为int,长度为12。( int daysInMonth[12]; )
63.假定有以下声明:
const int MAX_ROW=9;
const int MAX_COL=5;
float matrix[MAX_ROW][MAX_COL];
那么
(1)数组matrix中有多少个元素?( 45 )
(2)编写一条能显示第3行第4列元素的语句。( cout<<”第3行第4列元素是:”< (3)如何引用最后一行、最后一列的元素?( matrix[MAX_ROW-1][MAX_COL-1] ) (4)如何引用位于数组中间的元素? ( matrix[MAX_ROW/2][MAX_COL/2] ) 64.假设某计算机按字节进行编址,每4个字节存储一个float型变量。已知数组flt的地址是360(10),且有声明“float flt[100];”,则flt的地址是( 360(10) ),&flt[1]的地址是( 364(10) ),flt+8的地址是( 392(10) ),&flt[20]的地址是( 440(10) )。 65.假设有数组b,“int b[]={5,7,9,-4,77,-2,1};”,则b的意思是(数组名,也是指针常量,为数组的起始地址 ),*b的意思是( 第1个元素),b+2的意思是( 第3个元素的地址 ),*(b+2)的意思是( 第3个元素 )。 66.可以直接赋给指针的唯一整数是( 0 )。 67.指针是包含另一个变量的( 地址 )作为其值的变量。 68.指针可以直接操作( 地址 ),在数据操作方面有着速度快、节约内存等优点。 69.指针变量可以用来访问地址,使用( * )操作符可以转到指针变量所存储的地址并获取该地址空间的 值。 70.数组名实际上就是一个常量( 指针 )。 71.取值运算符( * )和取址运算符( & )是两个相反操作的运算符。 72.C++语言用运算符( new )完成动态内存的分配和初始化工作,用运算符 ( delete )完成清理和释放内存操作。 73.声明变量ptr_array为一个指向float类型的指针,语句为:( float *ptr_array; ),为一个包含10个float型数字的数组分配空间,并且把该地址赋给ptr_array,语句为:( ptr_array = new float[10] ; ),当该数组不再使用时,需释放空间,语句为: ( delete [] ptr_array ; )。 74.声明变量funPtr为一个指向函数的指针,该函数具有一个int和float型参数,返回一个double值,语句为:( double ( *funPtr ) ( int,float ) ;) 75.引入类定义的关键字是( class )。类的成员函数通常指定为( 公有的public ),类的数据成员通常指定为( 私有的private )。指定为( 公有的public )的类成员可以在类对象所在域中的任何位置访问它们。通常用类的( 数据 )成员表示类的属性,用类的( 函数 )成员表示类的操作。 76. A为一个类,则语句“A(A&a);”为该类( 复制构造 )函数的原型说明。 77. 可以把具有相同属性的一些不同对象归类,称为( 抽象 )。 78. 在面向对象的程序设计中,类描述的是具有相似性质的一组( 对象 )。 79. C++语言中,封装性、继承性和( 多态性 )是面向对象思想的主要特征。 80. 类中数据成员和成员函数的默认访问权限是( private)。结构体类型中,成员的默认访问权限是(public)。 81. 如果某成员函数的定义实现在类内,则系统默认该函数为该类的( inline )函数。 82.类的访问限定符包括( public ) 、( private ) 和( protected )。私有数据通常由( 公有的成员函数 )来访问(读和写)。这些函数统称为 ( 类的接口 ) 。 83.C++中支持三种域:( 局部域 )、( 名字空间域 )、( 类域 )。函数域被包括在( 局部域 )中,全局域被包括在( 名字空间域 )中。using指示符以关键字using开头,后面是关键字( namespace ),最后是(名字空间名)。这样表示以后在该名字空间中所有成员都( 可以直接被使用 )。如不使用using指示符则在使用时要加::,称为( 域 )运算符。 84.引用通常用作函数的( 参数 )和( 返回值 )。对数组只能引用( 数组元素 )不能引用数组名本身。 85.构造函数的任务是( 初始化数据成员 )。构造函数无( 函数返回类型说明 )。类中可以有( 多 )个构造函数,它们由( 不同的参数表 )区分。如果类说明中没有给出构造函数,则C++编译器会( 自动给出一个默认的构造函数 )。拷贝构造函数的参数是( 同一类对象的引用 ),当程序没有给出复制构造函数时,系统会自动提供( 默认的的复制构造函函数,称为默认的按成员语义)支持。这样的复制构造函数中每个类成员(被依次复制 )。 86.一个类有(一)个析构函数。( 对象注销时 )时,系统会自动调用析构函数。 87.运算符重载时,其函数名由( 关键字operator和该运算符)构成。成员函数重载双目运算符时,左操作数是(对象),右操作数是(该函数的参数)。 88.纯虚函数定义时在函数参数表后加( = 0 ),它表明程序员对函数( 不定义 ),其本质是将指向函数体的指针定为( NULL )。 89.C++中多态性包括两种多态性:( 编译时的 )和 ( 运行时的 )。前者是通过 ( 函数和运算符的重载 )实现的,而后者是通过 (类继承关系) 和 ( 虚函数 ) 来实现的。 90.一个派生类只有一个直接基类的情况称为 ( 单继承 ),而有多个直接基类的情况称为( 多重继承 )。 91.一个( 类模板 )允许用户为类定义一种模式,使得类中某些数据成员、某些成员函数的参数和返回值能取任意数据类型。 92. 函数模板的关键字是( template )。 93. 函数模板的形参可以是引用形参,也可以是( 值參 )。 94. 在类模板形参表与函数模板的形参列表中,使用了关键字typename,其实还可以使用关键字( class )。 95. 模板可以使我们只需用一个单独的代码段来表示一整套相关的函数,这一整套函数称为(模板函数);或是表示一整套相关的类,这一整套相关的类称为( 模板类 )。 96. STL中的容器分为顺序容器和( 关联容器 )两种。 97.清空容器中的所有元素,方法是( clear )。 98.需要经常在容器的中部或两端进行插入删除操作的应用程序应该使用( list容器 ),因为它可以高效的在数据结构的任意位置进行插入和删除操作。 99.STL库中的算法以( 迭代器 )为参数,这样就和容器的具体实现相互分离了。 100.在vector容器中使用( push_back )函数在vector对象后添加一个元素。 101.3种STL容器适配器为( 栈(stack) )、( 队列(queue) )和( 优先级队列(priority_queue) )。 102.模板可以实现程序设计中的( 代码重用 ),体现了面向对象程序设计的( 可重用性 )。 103.C++模板可以分为(函数模板)和(类模板)。 104.已知 int sum(int n){return n+n;} long sum(long n){return n+n;} 是一个函数模板的两个实例,则该函数模板的定义是( template T sum(T n){return n+n;} )。
版权声明:本文标题:面向对象程序设计习题-填空 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1708216896a517019.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论