1.已定义一个圆形类Circle:
class Circle
{
private: double r;
public:
void SetR(double x) { r = x; }
double GetArea( ) { return 3.14*r*r; }
};
使用Circle类来求一个半径为5的圆面积,下列语句中错误的是( )。
编号 |
选项 |
A |
Circle c, *p = &c; p->SetR( 5 ); cout << p->GetArea(); |
B |
Circle.SetR( 5 ); cout << Circle.GetArea(); |
C |
Circle *p = new Circle( ); p->SetR( 5 ); cout << p->GetArea(); delete p; |
D |
Circle c; c.SetR( 5 ); cout << c.GetArea(); |
2.已定义一个圆形类Circle:
class Circle
{
private: double r;
public:
void SetR(double x) { r = x; }
double GetArea( ) { return 3.14*r*r; }
};
编写一个显示某个圆面积的函数show,下列函数定义中错误的是( )。
编号 |
选项 |
A |
void show( Circle c ) { cout << “圆面积= ” << c.GetArea() << endl; } |
B |
void show( ) { cout << “圆面积= ” << Circle.GetArea() << endl; } |
C |
void show( Circle *c ) { cout << “圆面积= ” << c->GetArea() << endl; } |
D |
void show( Circle &c ) { cout << “圆面积= ” << c.GetArea() << endl; } |
3.已定义一个圆形类Circle:
class Circle
{
private: double r;
public:
void SetR(double x) { r = x; }
double GetArea( ) { return 3.14*r*r; }
};
用Circle类定义一个对象数组:Circle c[3]; 则下列语句中错误的是( )。
编号 |
选项 |
A |
for (int i = 0; i < 3; i++) { c[i].SetR(i*2.5); cout << c[i].GetArea() << endl; } |
B |
Circle p = &c[2];for (int i = 2; i >= 0; i–) { p->SetR(i2.5); cout << p->GetArea() << endl; p–; } |
C |
for (int i = 3; i >= 0; i++) { c[i].SetR(i*2.5); cout << c[i].GetArea() << endl; } |
D |
Circle p = &c;for (int i = 0; i < 3; i++) { p->SetR(i2.5); cout << p->GetArea() << endl; p++; } |
4.使用类ABC做如下定义:ABC x, *p, y[3]; 执行该定义语句将自动调用几次类ABC的构造函数?( )
5.函数间传递对象数据不能采用下列哪种方式?( )
编号 |
选项 |
A |
值传递 |
B |
被调函数直接访问主调函数中的局部对象 |
C |
引用传递 |
D |
指针传递 |
6.通过值传递在函数间传递对象数据,形实结合时会自动调用下列哪个构造函数来初始化对象形参?( )
编号 |
选项 |
A |
拷贝构造函数 |
B |
带形参的构造函数 |
C |
析构函数 |
D |
不带形参的构造函数 |
7.在类中声明一个常数据成员x,下列哪条语句是正确的?( )
编号 |
选项 |
A |
int x const; |
B |
int x; |
C |
int const x; |
D |
const int x; |
8.在类中声明一个常函数成员fun,下列哪条语句是正确的?( )
编号 |
选项 |
A |
const void fun( ); |
B |
void fun( ) const; |
C |
void const fun( ); |
D |
void fun( ); |
9.下列关于静态成员的描述中,错误的是( )。
编号 |
选项 |
A |
静态数据成员要在类外定义和初始化 |
B |
公有静态成员具有文件作用域 |
C |
静态数据成员不属于某个对象,是类的共享成员 |
D |
私有静态成员具有块作用域 |
10.已定义类A:
class A
{
public:
int x;
static int y;
};
int A::y = 0;
下列语句中错误的是( )。
编号 |
选项 |
A |
A.x = 1; A.y = 1; |
B |
A a; a.x = 1; a.y = 1; |
C |
A::y = 1; |
D |
A a; a.x = 1; A::y = 1; |