C++程序设计19秋在线作业1答卷

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C 程序设计19春在线作业1-0003
试卷总分:100 得分:100
一、单选题 (共 20 道试题,共 60 分)
1.假定classA为一个类,a为该类公有的数据成员,px为指向该类对象的指针,则访问px所指对象中数据成员a的格式为()。
A.px[a]
B.px.a
C.px->a
D.px(a)
答案:C

2.关于虚函数的描述中,()是正确的。
A.虚函数是一个非成员函数
B.虚函数是一个static类型的成员函数
C.派生类的虚函数与基类的虚函数具有不同的参数个数和类型
D.基类中说明了虚函数后,派生类中将其对应的函数可不必说明为虚函数
答案:D

3.下列函数中,()是对文件进行写操作的。
A.seekg()
B.read()
C.put()
D.get()
答案:C

4.进行文件操作需包含头文件()。
A.stdlib.h
B.stdio.h
C.ostream.h
D.fstream.h
答案:D

5.关于成员函数特征的下述描述中,()是错误的。
A.成员函数可以重载
B.成员函数可以设置参数的缺省值
C.成员函数可以是静态的
D.成员函数一定是内联函数
答案:D

6.假设已经有定义const char*const name="chen"; 下面的语句中正确的是()。
=new char[5];
="lin";
[3]= 'a';
D.cout<答案:D

7.编译时的多态性通过使用() 实现。
A.重载函数
B.虚函数
C.析构函数
D.构造函数
答案:A

8.建立包含有对象成员的派生类对象时,自动调用构造函数的执行顺序依次为()的构造函数。
A.自己所属类、对象成员所属类、基类
B.对象成员所属类、基类、自己所属类
C.基类、自己所属类、对象成员所属类
D.基类、对象成员所属类、自己所属类
答案:D

9.C++中引入友元的作用是()。
A.提高程序的运用效率
B.实现数据的隐藏性
C.增加成员函数的种类
D.加强类的封装性
答案:A

10.如果类A被说明成类B的友元,则()。
A.类B的成员即类A的成员
B.类B不一定是类A的友元
C.类A的成员即类B的成员
D.类A的成员函数不得访问类B的成员
答案:B

11.类模板的使用实际上是将类模板实例化成一个具体的()。
A.类
B.模板类
C.模板函数
D.对象
答案:B

12.以下叙述正确的是()。
A.函数的定义和函数的调用都可以嵌套
B.函数的定义和函数的调用均不可以嵌套
C.函数的定义可以嵌套,函数的调用不可以嵌套
D.函数的定义不可以嵌套,函数的调用可以嵌套
答案:D

13.下列类中()不是输入流类istream的派生类。
A.ofstream
B.istrstream
C.iostream
D.ifstream
答案:A

14.应在下列程序划线处填入的正确语句是()。 #include class Base { public: void fun(){cout<<"Base::fun"<A.fun();
B.Base::fun();
C.Base.fun();
D.Base->fun();
答案:B

15.假定

变量x定义为“int x=8;”,要使rx成为x的引用(别名),rx应定义为()。
A.int rx=x;
B.int rx=&x;
C.int *rx=&x;
D.int &rx=x;
答案:D

16.C++的继承性允许派生类继承基类的()。
A.部分特性,并允许增加新的特性或重定义基类的特性
B.部分特性,但不允许增加新的特性或重定义基类的特性
C.所有特性,并允许增加新的特性或重定义基类的特性
D.所有特性,但不允许增加新的特性或重定义基类的特性
答案:C

17.若已知char str[20],有语句 cin>>str;,当输入为:This is a cat,则str中的内容为()。
A.This is a cat
B.This is a
C.This is
D.This
答案:D

18.下面对类的构造函数的定义是() 。
A.void X::X( 参数 )
B.int X::X( 参数 )
C.float X::X( 参数 )
D.X::X( 参数 )
答案:D

19.若已定义了person类及person类的两个对象p1和p2,则执行语句"p1=p2;"将调用p1的()。
A.赋值运算符重载函数
B.析构函数
C.构造函数
D.拷贝构造函数
答案:A

20.假定classA为一个类,如果用户未定义析构函数,则系统为该类定义的默认析构函数为()。
A.void classA::~classA(){}
B.classA::~classA(int=0){}
C.classA::~classA(){}
D.classA::classA(){}
答案:C

二、判断题 (共 20 道试题,共 40 分)
21.拷贝构造函数使用本类对象的引用作为参数初始化新创建的对象。
答案:正确

22.构造函数是不能被派生类继承的。
答案:正确

23.类和对象之间的关系是具体和抽象的关系。
答案:错误

24.类中可以包含各种数据类型的数据成员,但不能有其他类对象。
答案:错误

25.私有静态数据成员不能被类外部函数访问,也不能用对象进行访问。
答案:正确

26.C++的变量声明非常灵活,它允许变量声明与可执行语句在程序中交替出现。
答案:正确

27.C++语言对同一字母的大小写将认为是同一字符。
答案:错误

28.C++允许定义有默认参数的函数,默认参数要在函数声明中提供,当又有声明又有定义时,定义中不允许默认参数。
答案:正确

29.ofstream是用于读文件的文件流。
答案:错误

30.new和delete运算符不可以被重载。
答案:错误

31.如果派生类没有实现虚函数,那么它将使用它的基类的虚函数。
答案:正确

32.析构函数可以是虚函数,构造函数不能定义为虚函数。
答案:正确

33.在文件操作结束时,可以用close()成员函数关闭该文件。
答案:正确

34.前缀自增运算符用成员函数方式重载时,其参数个数为0,用友元函数重载时,其参数个数为1。
答案:正确

35.构造函数和析构函数都不能说明返回值类型,甚至说明为void类型也不行。
答案:正确

36.可以在类的构造函数中对静态数据成员进行初始化。
答案:错误

37.fstream是既可用于写文件又可用

相关文档
最新文档