模拟题三及参考答案Word下载.docx
- 文档编号:17523993
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:11
- 大小:17.79KB
模拟题三及参考答案Word下载.docx
《模拟题三及参考答案Word下载.docx》由会员分享,可在线阅读,更多相关《模拟题三及参考答案Word下载.docx(11页珍藏版)》请在冰豆网上搜索。
A.0
B.1
C.5
D.无限
5.
下列_______为一个已有的数据类型另外命名。
A.enum
B.struct
C.typedef
D.union
6.表达式
18/4*Sqrt(4.0)/5
值的数据类型是_______。
A.int
B.float
C.double
D.不确定
7.sizeof(double)是一个______表达式。
A.整型
B.双精度
C.不合法
D.函数调用
8.
内联函数定义中,_____不正确。
A.内联函数体内不能有循环语句和switch语句。
B.执行时在调用处用函数体进行替换。
C.内联函数的声明必须出现在内联函数第一次被调用之前。
D.对内联函数不能进行异常接口声明。
9.
函数不可以_______。
A.嵌套调用
B.直接递归调用
C.间接递归调用
D.主函数调用主函数
10.
有关函数重载的描述哪些是正确的?
A.对不同类型的数据进行相同的操作需定义名称完全不同的函数。
B.对不同类型的数据进行相同的操作需定义名称相同的函数。
C.对相同类型的数据进行不同的操作需定义相同的函数。
D.对相同类型的数据进行相同的操作需定义完全不同的函数。
11.
下列函数中,____不能重载。
A.成员函数
B.非成员函数
C.析构函数
D.构造函数
12.
关于虚函数的描述中,_____是正确的。
A.虚函数是一个static类型的成员函数
B.虚函数是一个非成员函数
C.基类中说明了虚函数后,派生类中与其对应的函数可不必说明为虚函数
D.派生类的虚函数与基类的虚函数具有不同的参数个数和类型
13.
下列运算符中,_____运算符在C++中不能重载。
A.&
&
B.[]
C.:
:
D.new
14.C++语言本身没有定义I/O操作,但I/O操作包含在C++实现中。
C++标准库iostream库提供了基本的I/O类。
I/O操作分别由两个类istream和ostream提供,由它们派生出一个类____,提供双向I/O操作。
使用I/O流的程序需要包含iostream.h。
A.iostream
B.iostream.h
C.ostream
D.cin
15.
友元关系是:
A.单向且能传递
B.双向且不能传递
C.单向且不能传递
D.双向且能传递
16.
在C++类中可以包含________种具有不同访问控制权的成员。
(3分)
A.私有
B.公有
C.保护
D.继承
17.
函数模板的优点________。
A.创建通用功能的函数
B.支持多种不同形参
C.任何子程序调用只要一个模板函数即可
D.简化重载函数的函数体设计
18.
对某具体问题进行抽象分析的结果是通过____来描述和实现的(2分)
19.
类成员的访问控制属性中私有类型的说明用____(2分)
20.
多态是通过___函数和虚函数等技术来实现的(2分)
21.
成员函数类外实现时函数名前必须使用___来限定(2分)
22.
构造函数在定义对象时由___调用(2分)
23.
类模板定义中使用_____关键字(2分)
24.
对象的生存期可以分为静态和___两种(2分)
25.
全局变量是具有___作用域的变量(2分)
26.C++程序按结构可划分为:
类___文件、类定义文件和类使用文件(2分)
27.
利用I/O流类库中的操纵符_____可以设置输出宽度。
28.
利用I/O流类库中的格式标志值______设置以右对齐格式输出数据。
29.
分析以下程序执行的结果(11分)
#include<
iostream.h>
classSample
{
intx,y;
public:
Sample(){x=y=0;
}
Sample(inta,intb){x=a;
y=b;
~Sample()
{
if(x==y)
cout<
<
"
x=y"
endl;
else
x!
=y"
}
voiddisp()
x="
x<
y="
y<
};
voidmain()
Samples1(2,3);
s1.disp();
s1.~Sample();
30.
分析以下程序的执行结果(11分)
Samples1,s2(2,3);
s2.disp();
31.
编写一个程序,已有若干学生数据,包括学号、姓名、成绩,要求输出这些学生数据并计算平均分。
(20分)
参考答案:
1
D
2
A
3
4
5
C
6
7
8
B
9
10
11
12
13
14
15
16
ABC
17
ABD
18
类
19
private
20
重载
21
类域标记
22
系统自动
23
template
24
动态
25
文件
26
申明
27
setw()
28
ios:
right
解:
x=2,y=3
=y
本题说明了可以显式调用析构函数。
首先定义了一个类Sample,在main()中定义了它的一个对象,定义s1对象时调用其重载构造函数(x=2,y=3),然后,调用其成员函数输出数据成员,然后调用一次析构函数,最后在退出程序时又自动调用析构函数,所以输出为:
x=2,y=3
x!
注意:
析构函数不同于构造函数,析构函数既能被显式调用,也能被隐式调用。
x=0,y=0
x=y
本题说明了析构函数的调用顺序,这里定义了两个对象,先顺序调用s1和s2对象的构造函数,再调用各自的成员函数disp(),最后顺序调用s2和s1的析构函数。
所以输出为:
x=0,y=0
x=y
设计一个学生类Stud,除了包括no(学号)、name(姓名)、和deg(成绩)数据成员外。
有两个静态变量sum和num,分别存放总分和人数,另有一个构造函数、一个普通成员函数disp()和一个静态成员函数avg(),它用于计算平均分。
本题程序如下:
stdio.h>
string.h>
classStud
intno;
charname[10];
intdeg;
staticintsum;
staticintnum;
Stud(intn,charna[],intd)
no=n;
deg=d;
strcpy(name,na);
sum+=d;
num++;
staticdoubleavg()
returnsum/num;
printf("
%-5d%-8s%3d\n"
no,name,deg);
intStud:
sum=0;
num=0;
Studs1(1,"
Li"
89),s2(2,"
Chen"
78),s3(3,"
Zheng"
94);
\n学号
姓名
成绩\n"
);
s3.disp();
平均分=%g\n\n"
Stud:
avg());
本程序的执行结果如下:
学号
成绩
1
Li
89
2
Chen
78
3
Zheng
94
平均分=87
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模拟 参考答案