填空题多继承情况下,派生类对基类成员的访问会出现二义性。解决二义性的方法是 【13】 、 【14】 和 【15】 。
填空题数据模型按不同应用层次分为3种类型,它们是概念数据模型,{{U}} 【1】 {{/U}}和物理数据模型。
填空题在MyClass 类的定义中,对赋值运算符=进行重载。请将画线处缺失的部分补充完整。
__________MyClass::operator=(const MyClass rhs)
{
if(this=
value=rhs. value;
return*this;
}
填空题软件工程包括3个要素,分别为方法、工具和 【4】 。
填空题重载函数的实现和功能不同,但函数的{{U}} 【12】 {{/U}}相同。
填空题如下程序声明了一个二维图形类TwoDShape,从其派生出矩形类Rec。
#include<iostream>
#include<string>
using namespaee std,
class TwoDShape{// 二维图形类
char name[20];
public:
TwoDShape (char * n="unknown") {
strcpy(name, n);
}
Char * getName(){return name;}
{{U}} 【14】 {{/U}}=0;
};
class Rec: public TwoDShape{
double width, height
public:
Rec(double w-=0. 0,double h=0. 0):TwoDShape("rectangle")
{ width=w; height=h; }
double getWidth() {return width;}
double getHeight() {return height;}
double area() {return width * height;}
};
int main() {
TwoDShape * shape;
Shape=new Rec(2.1,3.0);
cout<<"object is"<<shape->getName()<<"/n";
cout<<"Area is"<<shape->area()<<"/n";
return 0
}
请将程序补充完整,使程序在运行时输出:
abject is triangle
Area is 6.3
填空题有如下程序:
#include
using namespace std;
class A{
pubic;
A(){cout<<1;}
A(const A}
-A(){cout<<3;}
};
int main(){
A obj1;
A obj2(obj1);
return 0;
}
运行这个程序的输出结果是【9】。
填空题请将如下程序补充完整,使得输出结果为:bbaa
#include <iostream>
using namespace std;
class A {
public:
{{U}} 【14】 {{/U}}{cout << "aa"; }
};
class B: public A{
public:
~B(){ cout << "bb"; }
};
int main () {
B *p= new B;
delete p;
return 0;
}
填空题如果要在类的对象上使用运算符,除了运算符=和{{U}} [14] {{/U}}以外,其它的必须都要被重载。
填空题在进行函数调用时,将把参数的 【7】 传递给值参,把参数的 【8】 传递给引用参数。
填空题下列函数的功能是判断字符串str是否对称,对称则返回true,否则返回false。请在横线处填上适当内容,实现该函数。 bool fun(char *str) int i=0,j=0; while(str[j]) 【6】 ; for(j--; i<j i++,j--); return i 【7】 j;
填空题若有以下程序:
#include <iostream>
using namespace std;
class Base
{
public:
void who()
{
cout<<"class Base"<<end1;
}
};
class Derivedl : public Base
{
public:
void who()
{
cout<<"class Derivedl"<<end1;
}
};
class Derived2 : public Base
{
public:
void who()
{
cout<<"class Derived2"<<end1;
}
};
int main()
{
Base *p;
Derivedl obj1;
Derived2 obi2;
p=
p=
p->who ( );
return 0;
}
则该程序运行后的输出结果是{{U}} {{U}} {{/U}} {{/U}}。
填空题一棵二叉树第6层(根结点为第1层)的结点数最多为______个。
填空题已知:
int DBL(int n){return n+n;}
和
long DBL(long n){return n+n;}
是一个函数模板的两个实例,则该函数模板的定义是______。
填空题switch 后面括号中的表达式只能是整型、{{U}} 【8】 {{/U}}或枚举型表达式。
填空题多态性分为两类:编译时的多态性和{{U}} 【7】 {{/U}}。
填空题有以下程序:
#include <iostream>
using namespace std;
class CFactorial
{
private:
int value;
int fact;
public:
CFactorial ( int val );
void CalculateFactorial();
void Display();
};
CFactorial :: CFactorial( int val )
{
value = val;
fact = 1;
}
void CFactorial :: CalculateFactorial()
{
int i = value;
while ( i > 1 )
fact *= i--;
}
void CFactorial :: Display()
{
cout<<value<<"!="<<fact<<end1;
}
int main()
{
CFactorial A( 5 );
A.CalculateFactorial();
A.Display();
return 0;
}
程序中,类CPactorial的功能是{{U}} 【13】 {{/U}},该程序运行的结果是{{U}} 【14】 {{/U}}。
填空题实体之间的联系可以归结为一对一联系、一对多(或多对多)的联系与多对多联系。如果一个学校有许多教师,而一个教师只归属于一个学校,则实体集学校与实体集教师之间的联系属于【 】的联系。
填空题使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错,请改正其中的错误,使程序正确运行,其输出的结果为
30
130
注意:错误的语句在//******error******的下面,修改该语句即可。
试题程序:
#include<iostream.h>
int a=10;
class TC
{
public:
TC()
{
a=b=0;
}
void display()
{
//******error******
cout<<a<<b<<end1;
}
void func(int a)
{
//******error******
a+=a;
}
void func2()
{
//******error******
a+=a;
}
private:
int a,b;
};
void main()
{
TC obj;
obj.func(3);
obj.display();
obj.func2();
obj.display();
}
填空题假设int a=1,b=2;则表达式a+++--b的值为{{U}} 【7】 {{/U}}。
