北语 18春《C++》
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
18春《C++》作业_1
一、单选题( 每题5分, 共15道小题, 总分值75分)
1.下面程序的输出结果是()。
#include
int fun(char *s)
{
char *p=s;
while(*p!='\0')
p++;
return (p-s);
}
void main()
{
cout<<fun("abcdefghijklmnopqrst ")<<endl;
}
A. 20
B. 6
C. 19
D. 0
答案:A
2.有关类的说法不正确的是()。
A. 类是一种用户自定义的数据类型
B. 只有类中的成员函数才能存取类中的私有成员
C. 在类中,如果不做特别说明,所指的数据均为私有类型
D. 在类中,如果不做特别说明,所指的成员函数均为公有类型答案:D
3.每个C++程序都必须有且仅有一个()。
A. 预处理命令
B. 主函数
C. 函数
D. 语句
答案:B
4.下面叙述不正确的是()。
A. 派生类一般都用公有派生
B. 对基类成员的访问必须是无二义性的
C. 赋值兼容规则也适用于多重继承的组合
D. 基类的公有成员在派生类中仍然是公有的
答案:D
5.下列不是描述类的成员函数的是()。
A. 构造函数
B. 析构函数
C. 友元函数
D. 拷贝构造函数
答案:C
6.下列运算符中,在C++语言中不能重载的是()。
A. *
B. >=
C. ::
D. /
7.下列有关重载函数的说法中正确的是()。
A. 重载函数必须具有不同的返回值类型
B. 重载函数参数个数必须相同
C. 重载函数必须有不同的形参列表
D. 重载函数名可以不同
8.在派生类中定义虚函数时,可以与基类中相应的虚函数不同的是()。
A. 参数类型
B. 参数个数
C. 函数名称
D. 函数体
9.下列关于C++与C语言关系的描述中错误的是()。
A. C++是C语言的超集
B. C++是C语言进行了扩充
C. C++和C语言都是面向对象的程序设计语言
D. C++包含C语言的全部语法特征
10.类模板的使用实际上是类模板实例化成一个具体的()。
A. 类
B. 对象
C. 函数
D. 模板类
11.下面关于友元的描述中,错误的是()。
A. 友元函数可以访问该类的私有数据成员。
B. 一个类的友元类中的成员函数都是这个类的友元函数。
C. 友元可以提高程序的运行效率。
D. 类与类之间的友元关系可以继承。
12.编写C++程序一般需经过的几个步骤依次是()。
A. 编辑、调试、编译、连接
B. 编辑、编译、连接、运行
C. 编译、调试、编辑、连接
D. 编译、编辑、连接、运行
13.假设ClassY:publicX,即类Y是类X的派生类,则说明一个Y类的对象时和删除Y类对象时,调用构造函数和析构函数的次序分别为()。
A. X,Y和Y,X
B. X,Y和X,Y
C. Y,X和Y,X
D. Y,X和X,Y
14.当一个类的某个函数被说明为virtual时,该函数在该类的所有派生类中()。
A. 都是虚函数
B. 只有被重新说明时才是虚函数
C. 只有被重新说明为virtual时才是虚函数
D. 都不是虚函数
15.C++异常处理机制中没有()。
A. try
B. throw
C. catch
D. finally
二、判断题( 每题5分, 共5道小题, 总分值25分)
1.在C++中,运算符优先级相同的情况下,按照从右向左的顺序进行计算。
2.C++语言中不允许使用宏定义方法定义符号常量,只能用关键字const 来定义符号常量。
3.for语句中的循环控制变量必须在for语句内部进行声明。
4.sizeof(表达式)的功能是返回指定的表达式值的数据类型在内存中占用的字节数。
5.C++语言中,函数的声明和函数的定义必须在同一个源文件内。
18春《C++》作业_2
一、单选题( 每题5分, 共15道小题, 总分值75分)
1.有关C++编译指令,以下叙述正确的是()。
A. C++每行可以写多条编译指令
B. #include指令中的文件名可含有路径信息
C. C++的编译指令可以以#或//开始
D. C++中不管#if后的常量表达式是否为真,该部分都需要编译
2.友元关系不能()。
A. 提高程序的运行效率
B. 是类与类的关系
C. 是一个类的成员函数与另一个类的关系
D. 继承
3.关于类模板的说法正确的是()。
A. 类模板的主要作用是生成抽象类
B. 类模板实例化时,编译器将根据给出的模板实参生成一个类
C. 在类模板中的数据成员具有同样类型
D. 类模板中的成员函数没有返回值
4.若有语句char a[]= "test";则数组a[]中共有()个变量。
A. 3
B. 4
C. 5
D. 0
5.一个函数功能不太复杂,但要求被频繁调用,则应把它定义为()。
A. 内联函数
B. 重载函数
C. 递归函数
D. 嵌套函数
6.在C++中,函数原型不能标识()。
A. 函数的返回类型
B. 函数参数的个数
C. 函数参数类型
D. 函数的功能
7.关于对象成员的构造函数的调用顺序,说法正确的是()。
A. 与它们在成员初始化列表中给出的顺序相同
B. 与析构函数的调用顺序相同
C. 与它们在类中说明顺序相同
D. 以上说法都不对
8.下列关于类的权限的描述错误的是()。
A. 类本身的成员函数只能访问自身的私有成员
B. 类的对象只能访问该类的公有成员
C.
普通函数不能直接访问类的公有成员,必须通过对象访问
D. 一个类可以将另一个类的对象作为成员
9.在公有派生类的成员函数不能直接访问基类中继承来的某个成员,则该成员一定是基类中的()。
A. 私有成员