最新C++试题(一)附答案

一、单项选择题(共 20 题,每题 1 分,共 20 分)
1、    下列关于C++调浮标标识符的命名不合法的是
A.Pad B. name_1 C. A#bc D. _a12
2、 若有以下类型标识符定义:    ( )
int x=2 char w='a' float y=23.45f double z=45.6712 则表达式 w*x+y-z 的结果类型是
A.float B. char C. int D. double
3、    若有 int x=10,y=20,z=30; 则执行下面语句后, x 的值是 if(x>y)
z=x;
x=y;
y=z;
A.10 B. 20 C. 30 D. 0
4、 循环语句 whlie(int i=0 )i--;    的循环次数是
A.0 B. 1 C. 5 D. 无限
5、    一个函数无返回值时,应选择的说明符是
A.static B. extern C. void D.    无说明符
6、    对重载函数形参的描述中,错误的是
A.建模仿真参数的个数可能不同
B.参数的类型可能不同
C.参数的顺序可能不同
D.参数的个数、类型、顺序都相同,只是函数的返回值类型不同
7、    以下能正确定义数组并正确赋初值的语句是
A.int N=5,b[N][N];
B.int a[2]={{1},{3},{4},{5}};
C.int c[2][]={{1,2},{3,4}};
D.int d[3][2]={{1,2},{3,4}};
8、 下列给字符数组进行的初始化中    , 不正确的是
A. char s1[]="abcd";
B.char s2[3]={'x','y','\0'};
C.char s3[]={'a','x','y','\0'};
D.char s4[6]={"xyz","mnp"};
9、    通常的拷贝构造函数的参数是
A. 某个对象名 B .某个对象成员
C. 某个对象的引用 D .某个对象的指针名
10、    关于构造函数特点的描述中,错误的是
A. 定义构造函数必须指出类型
B.构造函数的名字与该类的类名相同
C.一个类中可定义 0 至多个构造函数
D.构造函数是一种成员函数
11、下面程序的运行结果为
#include <iostream.h>
int add(int a,int b);
void main()
{
extern int x,y; cout<<add(x,y)<<endl;
}
int x=20,y=5;
int add(int a,int b)
{
int s=a+b;
return s;
}
A20 B5 C25 D .编译会提示出错信息
12、关于常成员的描述中,错误的是
A. 常成员包含常数据成员和常成员函数两种
B.常数据成员必须是公有的
C.常数据成员要使用构造函数成员初始化列表进行初始化
D.常对象只能调用它的常成员函数,不能调用其它的成员函数
13、关于友元函数的描述中,错误的是
A. 友元函数不是成员函数
B.友元函数只能访问类中私有成员
C.友元函数破坏隐藏性,尽量少用
D.友元函数说明在类体内,使用关键字 friend
14、如果有 int x,*p; float y,*q;    则下面操作正确的是
Ap=x B p=q
Cp=&x Dp=&y
15、若有函数说明 void fA(int m, int n); 和指针变量的定义 void (*p)(int,int); 并且有 p= fA 则下列操作不正确的是
A.( *p ) (3,4); B p(3,4);
CfA(3,4); D *p++;
16、若数组名作实参而指针变量作形参,函数调用时实参传给形参的是 A. 数组的长度
B.数组第一个元素的值
C.数组所有元素的值
D.数组第一个元素的地址
17、对于动态分配内存空间描述正确的是
A.使用new运算符分配的内存空间的长度必需是常量
Bdelete 运算符可以释放动态的存储空间和静态的存储空间
C.new分配的内存空间是不连续的
D.delete运算符只能释放由 new分配的动态存储空间
18、能够释放对象所占资源的是    ( )
A.析构函数B •数据成员
C.构造函数 D •静态成员函数
19、虚函数的定义是在基类中进行的,定义时需要冠以关键字
A. static B . frend
Cvirtual D   
public
20、在C++中串流类是在头文件    strstrea.h
中定义的,下列不属于串流类的是
Astrstream B
ostrstream
Cofstream D
istrstream
二、填空题(共
916空,每空 1分,共
16 分)
1 、函数重载时,
编译系统会根据        或_
___ 来区分。
2、    若有 char a[80]; cin>>a 表示从键盘上读入一个      到数组 a 中。
3、 若希望用一个已有对象来构造另一个同类型的对象,可以使用        来实现。
4、 静态成员属于      ,而不属于      ,它被同一个类的所有对象共享。
5、 类的继承方式有      继承、      继承和      继承。
6、重载运算符的含义必须清楚,不能有      。
7、按照联编进行阶段的不同,联编方法可分为两种:      和      。
8、 当基类中的某个成员函数被声明为虚函数后,    此虚函数就可以在一个或多个派生类中被重新定
义,在派生类中重新定义时,其函数原型,包括返回类型、        、      、参数类型以及参数的
顺序都必须与基类中的原型完全相同。
9C++I/O是以的形式实现的,每个    C++编译系统都带有一个面向对象的输入    /输岀软件包,
这就是 。
三、    判断题(共 10 题,每题 1 分,共 10 分)
1、    C++语言支持封装性和继承性,不支持多态性。
2、    关系运算符可以用来比较两个字符的大小,也可用来比较两个字符串的大小。)
3、    字符串 "sdfgh" 的长度是 5
4、    引用和指针都可作函数参数。
5、    友元函数说明在类体内,它是一种成员函数。
6、    友元类必须被说明为公有成员。
7、    纯虚函数是在基类中说明的虚函数,它在该基类中没有定义具体的操作内容。
8、    析构函数不能被继承。
9、    运算符重载以后,其优先级和结合性都不能改变。
10、    在C+冲,函数名实际上是一个指针,它指向函数的入口。
四、    分析程序,回答所提岀的问题(    16分)
1 #include <iostream.h>
class B;
class A
{
public:
A(int i)
{ a=i; }
friend int F(A &f1,B &f2);
private:
int a;
};
class B
{
public:
B(int i)
{ b=i; } friend int F(A &f1,B &f2);
private:
int b;
};
int F(A &f1,B &f2)
{
return (f1.a+f2.b)* (f1.a-f2.b);
}
void main()
{
A n1(10);
B n2(8);
cout<<F(n1,n2)<<endl;
}
1写出程序的运行结果。
2
对类 B
该程序中共有几个对象,分别属于哪个类 ? 为什么在程序的开头处通过语句    class B;
进行声明?
3程序中的哪两条语句会分别调用    AB 的构造函数?写出这两个构造函数。
4函数 F 是什么函数?它的作用是什么?
五、阅读程序,写出运行结果(共 2题,第 16分,第 28分,共 14分)
1、    #include <iostream.h>
int func(int a)
{
int b=0;
static int c=4;
b++; c--;
return(a+b+c);
}
void main( )
{
int a=2;
for(int j=0;j<2;j++)
cout<<func(a+j)<< " ";
}
输出结果为:
2#include <iostream.h> class X
{
public:
X(int i)
螺钉输送机
{ x=i; cout<< int:
<<i<<'
, ' <<called n; }
X(double i)
{ x=(int)i*2; cout<<
double:
<<i<<', '<<called n
~X()
{ cout<< ~X():
<<x<<', '
<<called n; }
private:
int x;
};
void main()
{
int a=8;
double b=11.0;
X x1(55), x2(a*5);
X x3=X(2*a);
X x4=X(b);
}
输出结果为:
六、编写程序(共 2 题,第 1 10 分,第 2 14 分,共 24 分)
支的结构1、输入一组数据以 -1 作为结束标志,要求删除其它数据只保留能被 2 整除的数据并输出结果。
2、定义一个日期类 Date ,包含年、月、日三个数据成员,以及一个求第二天日期的成员函数和 输出日期的成员函数。
模拟试卷(一)答案 一、单项选择题
1C 2D 3B 4 A 5C 6D 7内衣加工D 8D 9C 10A
11C 12B 13B 14C 15D 16D 17D 18A 19 C 20C
二、填空题
1、形参的类型 形参的个数
2、字符串
3、拷贝构造函数
4、类 任何一个对象
5、    public (或公有) private (或私有) protected (或保护)
6、二义性
7、动态联编 静态联编
8、函数名 参数个数
9、字节流 I/O 流类库
三、判断题
1、    X2X3、“ 4、“ 5X6X7、“ 8、“ 9、“ 10 V
四、    分析程序,回答所提出的问题(平分标准:每问    4分,共 16分)
136
2n1 n2 两个对象, n1 属于 A 类, n2 属于 B 类。
因为B类的定义在A类后,而A类中要引用B剑杆织布机类。
3语句 A n1(10); 和语 B n2(8);
A类的构造函数: A(i nt i) { a=i; }
B类的构造函数: B(i nt i) { b=i; }
4函数 F 是友元函数。
它的作用是: 提供了不同类或对象的成员函数之间、 类的成员函数与一般函数之间共享数据的机
制。(关键答岀共享数据、或答岀通过友元可以访问到封装与类    AB中的数据)
五、    阅读程序,写出运行结果
1 、输岀结果为: 6 6

本文发布于:2024-09-22 03:31:49,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/167246.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:函数   成员   定义   类型   数据   对象   友元   指针
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议