安阳师范学院-计算机应
定义堆栈类模板Stack(先进后出),栈的大小由使用者确定。要求该类模板对外提供 如下二种基本操作: (1)push入栈(2)pop出栈,用数组来实现 #include using namespace std; temp
答案是:template|Push|Pop|;|(|)|int|{
定义一个矩形类(Rectangle),私有数据成员为矩形的长度(len)和宽度(wid),无参构造函数置len和wid为0,带参构造函数置len和wid为对应形参的值,另外还包括求矩形周长,求矩形面积、取矩形长度、取矩形宽度、修改矩形长度和
答案是:class|main|;|(|)|float|{|}
在三角形类TRI实现两个函数,功能是输入三个顶点坐标判断是否构成三角形 #include #include class point{ private:float x,y; public:point(f
答案是:settri|sqrt|;|(|)|float|{|}
下面是定义二次多项式ax2+bx+c所对应的类#include#includeclass Quadratic { double a,b,c;public: Quadratic(){a=b=c=0;} Quadratic(d
答案是:main|Root|Print|;|(|)|{|}
编写一个三角形类,有计算面积,显示面积的功能等,并测试。要求有参数的构造函数及
答案是:class|~|;|(|)|float|{|}
C++的流库预定义了4个流,它们是cin、cout、______和clog。
答案是:cerr
执行______操作将释放由p所指向的动态分配的数据空间。
答案是:delete p
若y是x的引用,则对y的操作就是对______的操作。
答案是:x
C++是通过引用运算符______来定义一个引用的。
答案是:&
一个const对象只能访问______成员函数
答案是:const
在#include命令中所包含的头文件,可以是系统定义的头文件,也可以是______
答案是:用户
派生类从一个或多个以前定义的该类的_________继承数据和函数。
答案是:基类
在C++中,访问一个对象的成员所用的运算符是成员选择运算符,访问一个指针所指向的对象的成员所用的运算符是_________。
答案是:成员访问运算符(或“->”)
将关键字const写在成员函数的函数头和_________之间时,所修饰的是this指
答案是:函数体
假定AB为一个类,则语句AB(AB&x);为该类_________构造函数的原型
答案是:复制初始化(或拷贝)
C++中语句const char * const p=″hello″;所定义的指针p和它所指的内容都不能被_________。
答案是:改变(或重新赋值)
C++支持的两种多态性分别是编译时的多态性和_________多态性。
答案是:运行时的(或动态,或虚函数)
基类的公有成员在派生类中的访问权限由_________决定。
答案是:访问控制
表达式cout<
答案是:cout<<′\n′
在C++程序设计中,建立继承关系倒挂的树应使用_________继承。
答案是:单
定义类的动态对象数组时,系统只能够自动调用该类的_________构造函数对其进
答案是:无参
所有模版都是以______关键字和一个形参表开头的。
答案是:template
C++程序的源文件扩展名为______。
答案是:cpp
为了使类中的成员不能被类外的函数通过成员操作符访问,则应把该成员的访问权限定
答案是:private
对象的四大基本特性是多态性、继承性、______和封装性。
答案是:抽象性
指出下面程序段中的错误,并说明出错原因。 class Location { int X,Y=20; protected: int zeroX,zeroY;
答案是:int X,Y=20;出错,不能采用这种方式初始化。
指出下面程序段中的错误,并说明出错原因。 #include class A{ public: void fun( ){cout<<″a.fun″<<>< p=""> }; class
答案是:void hun(){fun();}出错,C::fun()有二义性。
指出下面程序段中的错误,并说明出错原因。 class one{ private: int a; public: void func(two&); }; class
答案是:void func(two&);出错,two尚未声明(或应在class one前加声明语句class two;)。
指出并改正下面利用类模板的对象定义中的错误。 template class Tany{ T x,y; public: Tany(T a,T b){x=a,y=b;} T sum(
答案是:Tany(int) obj(10,100);出错,应为Tany obj(10,100);语句。
[改错题,3.1分] 指出下面程序段中的错误,并说明出错原因。 class A{ int a,b; public: A(int aa,int bb) {a=aa;b=bb;} };
答案是:Ax(2,3),y(4);语句出错,因为没有单参数的构造函数(或者y(4)少写了一个参数)。
在下面程序横线处填上适当的字句,使其输出结果为0,56,56。 #include class base{ public: 在下面程序横线处填上适当的字句,使其输出结果为
答案是:void
下面是类fraction(分数)的定义,其中重载的运算符<<以分数形式输出结果,例如将三分之二输出为2/3。在横线处填上适当字句。 class fraction{ int den; //分子 int num
答案是:os
下面是一个用户口令检查程序,在横线处填上适当语句完成程序功能。 #include #include const char *PASS=″wolleh″;//定义由PASS指针所指向的口令wolleh。
答案是:cin>>user;
下面是一个函数模板,用于计算两个向量的和。在下面横线处填上适当字句,完成函数模板定义。 #include template T* f(T* a,T* b,int n) { T* c=____
答案是:new int[n]
在下面横线处填上适当字句,完成类中成员函数的定义。 class A{ int * a; public: A(int aa=0) { a=new int(
答案是:delete a
#include template Tf(T*a,T*b,int n){ Ts=(T)0; for(int i=0;i<>< p="">
答案是:3531
#include void main( ) { int *a; int *&p=a; int b=10;
答案是:10
类的私有成员只能被它的成员函数和_________访问。
答案是:友元类(或友元函数,或友元)
在下面的类定义中,私有成员有_________。 class Location { int X,Y; protected: int zeroX,zerxY;
答案是:X,Y,length,height
静态成员函数、友元函数、构造函数和析构函数中,不属于成员函数的是_________。
答案是:友元函数
在删除一个动态对象时,将自动调用该动态对象所属类的_________函数。
答案是:析构
封装要求一个对象应具备明确的功能,并具有_________以便和其它对象相互作用。
答案是:接口〈或界面.或公有成员〉
要在调用虚函数的时候强制进行静态联编,可以通过在调用中对虚函数加_________实现。
答案是:域名限制(或其它含义等价的描述)
通过C++语言中的_________机制,可以从现存类中构建其子类。
答案是:继承(或派生)
表达式count<
答案是:cout,sctf(ios::hex,ios::basefield)
假定用户没有给一个名为AB的类定义析构函数,则系统自动给出的缺省析构函数定
答案是:~AB(){}
模板定义中标识类型的参数必须用关键字_________修饰。
答案是:class(或typcname)
重载函数在参数类型或参数个数上不同,但___________________相同
答案是:函数名
在C++中,访问指针所指向的对象的成员使用运算符___________________。
答案是:->
在派生类中实现基类成员的初始化,需要由派生类的构造函数调用_________________
答案是:基类的构造函数
编译时的多态性通过___________________函数实现。
答案是:重载
为了实现多态性,派生类需重新定义基类中的___________________。
答案是:虚函数
由static修饰的数据成员为该类的所有对象___________________。
答案是:共享
如果重载了运算符+,则相应的运算符函数名是___________________。
答案是:operator+
在ios类中定义的用于控制输入输出格式的枚举常量中,用于代表十进制、八进制和十六进制的3个枚举常量是dec、oct和___________________。
答案是:hex
函数模板中紧随template之后尖括号内的类型参数都要冠以保留字________________。
答案是:class
在用C++进行程序设计时,最好用___________________代替malloc。
答案是:new
指出下面程序段中的错误,并说明出错原因。 class Location { int X,Y; protected: int zeroX,zero
答案是:location retangleA={25,20,3,5,6,7,3};语句错误,因为数据成员不都是公有成员,不能用初始化列表初始化
指出下面程序中的错误,并说明错误原因。 #include class A{ public:void fun(){cout<<″a.fun″<<>< p=""> };
答案是:第15行 obj.fun();语句错误,因为用C类的对象obj对函数fun()的访问是两义的,应使用成员名限定来消除两义性。
指出下面程序中的错误,并说明出错原因。 #include class ConstFun{ public: void ConstFun(){}
答案是:程序中第4行“void ConstFun(){}”错误,因为声明构造函数时不能指定返回类型
下面程序通过调用函数模板实现计算两个正整数的最大公约数,把main函数中错误找出并改正过来。 #include template T gcd(Tx,Ty){ while(x
答案是:main函数中的gcd(a,d)改为gcd(a,(int)d) (或把double d;改为int ; 或把gcd(a,d)改为gcd<int>(a,d)或把gcd(a,b)改为gcd(a,int (a))=
此类定义有一处错误,请指出错误并改正。 class ABC{ int a; public: ABC(int aa)a(aa){} };
答案是:ABC(int aa)与a(aa){}之间少一个冒号,应改为ABC(tnt lla):a(aa){}
在下面程序横线处填上适当的内容,使该程序输出结果为: Creating B end of B end of A 程序如下: #include class A
答案是:cout<<”creating B”<
请在下面横线处填上适当的内容,使程序的输出为: 7.00000 7 程序如下: #include viod main(){ double x=7;
答案是:resetiosflags(ios::showpoint)
下面程序三次调用同一函数sum,在横线处填上适当内容,使输出结果为: S=2 S=5 S=9 程序如下: #include void sum(int i)
答案是:i<3;i++
在下面程序横线处填上适当内容,使程序执行结果为: 200_ _ 100 程序如下: #include template <class T> Tf(Tx,Ty){
答案是:sizeof(double)
在下面程序段横线处填上适当的内容。 class A{ ________ int n; public: A(int nn=0):n(nn)
答案是:int *a;
写出下面程序的输出结果。 #include class FUN{ friend ostream& operator <<(ostream&,FUN); }fun; ostre
答案是:* * * * * 12345 54321 * * * * *
当从键盘上输入1.5 10时,写出下面程序的执行结果。 #include void mian() { int a,b,c; char ch;
答案是:1(1分)  .(2 分)  5(1分)  10(1分)
在已经定义了整型指针ip后,为了得到一个包括10个整数的数组并由ip所指向,应使用
答案是:ip = new int[10];
在联合中,所有数据成员具有______的地址,任一时刻只有一个数据成员有效。
答案是:相同
为了在对象生存期结束时释放其指针成员所指向的动态存储空间,通常需要为该类定义
答案是:析构函数
通过C++语言中类的______,可以扩充和完善已有类以适应新的需求。
答案是:继承机制
在C++中,虚函数帮助实现了类的______性。
答案是:多态
一个抽象类的派生类可以实例化的必要条件是实现了所有的______。
答案是:纯虚函数
将关键字const写在函数头之后,函数体之前,说明该函数是一个const成员函数。此时const不是指定函数的返回值,而是修饰______指针。
答案是:this
语句序列 ifstream datafile; datafile.open(“data.dat”); 的功能可用一个语句实现,这个语句是______。
答案是:ifstream datafile(“data.dat”)
在单继承和多继承方式中,面向对象的程序设计应尽量使用______继承。
答案是:单一(或单)
设函数max是由函数模板实现的,并且max(3.5,5)和max(10,5)都是正确的函数调用,则该模板具有______个类型参数。
答案是:2
作为类的成员函数重载一个运算符时,参数表中只有一个参数,说明该运算符有____________个操作数。
答案是:2
每个对象都是所属类的一个____________。
答案是:实例
当函数参数表用____________保留字表示时,则表示该参数表为空。
答案是:void
C++的流库预定义了4个流,它们是cin、cout、cerr和____________。
答案是:clog
若p指向x,则____________与x的表示是等价的。
答案是:*p
假定用户为类AB定义了一个构造函数“AB(int aa=0):a(aa){}”,则定义该类的对象时,可以有____________种不同的定义格式。
答案是:2
C++支持两种多态性,编译时的多态性和____________时的多态性。
答案是:运行
假定要把aa定义为AB类中的一个引用整数型数据成员,则定义语句为____________。
答案是:int &aa
在C++中,编译指令都是以____________(符号)开始。
答案是:#
重载“<<”操作符时,应声明为 ____ 函数。
答案是:友元
用下横线标出下面程序main函数中的错误所在行,并说明错误原因。 # include class Location{ private: int X,Y;
答案是:第24行语句x=A1.X;y=A1.Y;有错,因为main函数不能访问对象A1的私有成员。
下面的程序类B的定义中有一处错误,请用下横线标出错误所在行并说明错误原因。 # include # include class A{ public:A(const
答案是:第12行有错,因为在类B中,name是由类A私有成员继承来的,不能被派生类访问。
下面的程序有一处错误,请用下横线标出错误所在行并改正错误。 # include class Test{ public; static int x;
答案是:程序中第6行错误,该行应为: int Test::x=20;
下面的程序先把字符串“Look out!”输出到一个文件中,然后再从该文件输入,并显示在屏幕上,显示效果为Look out!。程序中有一处错误,请用下横线标出错误所在行,并给出更改意见。 # include
答案是:第7行错,应改为:char k;while(inf.get(k)) cout<
下面的类定义有一处错误,请用下横线标出错误所在行并改正错误。 class A{ int a; public; A(int aa):a=aa{ } };
答案是:第4行有错“:a=aa”有错,应改为“:a(aa)”或等价的写法
根据注释在空白处填写适当内容。 class Location{ private: int X,Y; public: void i
答案是:cout<
在下面横线处填上合适内容,完成类B的定义。 # include class A{ public:A( ){a=0;} A(int i){a=i
答案是:A(i)
在下面程序中的横线处填上适当内容,使程序完整。 # include class vehicle { protected: int size;
答案是:&v2
在下面的横线处填上适当内容,使程序完整。 # include # include class loc{ private:
答案是:static
在下面程序横线处填上适当内容,以使该程序执行结果为: 12 88 # include template class Tany{ public:
答案是:T x,y;
写出下面程序的输出结果: # include template class Tclass{ T x,y; public: Tcla
答案是:10.5-5.8i 10+0i
写出下面程序的输出结果: # include class FunArray{ int *pa; //指向一个数组空间 int size; //数组元素个数
答案是:3,7,9,1,5,4,
C++语言中可以实现输出一个换行符并刷新流功能的操控符是()。
答案是:endl
执行下列代码 cout <<″hex:″<< hex="" 255="">程序的输出结果为 () 。
答案是:Hex:ff
执行下列代码 int a=29,b=100; cout <程序的输出结果是:()。
答案是:29100
在C++中,声明布尔类型变量所用的关键字是() 。
答案是:bool
在使用string类的find成员函数来检索主串中是否含有指定的子串时,若在主串中不含指定的子串,find函数的返回值是() 。
答案是:-1
将指向对象的指针作为函数参数,形参是对象指针,实参是对象的()。
答案是:地址值
对象传送的消息一般由3部分组成:接收对象名、调用操作名和()。
答案是:必要的参数
类A有如下成员函数 int A::fun(double x){return (int) x/2;} int A::fun(int x){return x*2;} 设a为类A的对象,在主函数中有int s=a.fun(6.0)+a.fu
答案是:7
在保护派生中,基类权限为Private的成员在派生类()中 。
答案是:不可访问
设在程序中使用如下语句申请了一个对象数组: Point * ptr = new Point[2]; 则在需要释放ptr指向的动态数组对象时,所使用的语句是()
答案是:delete[ ]ptr;
设类A有成员函数 void Fun(void); 若要定义一个指向类成员函数的指针变量pafn来指向Fun,该指针变量的声明语句是:()
答案是:void(A::*pafn)(void);
()指令指示编译器将一个源文件嵌入到带该指令的源文件之中。
答案是:#include
不同对象可以调用相同名称的函数,但可导致完全不同的行为的现象称为()。
答案是:多态性
类的继承是指子类继承基类的()和成员函数。
答案是:数据成员
在C++中,利用向量类模板定义一个具有20个char的向量E,其元素均被置为字符‘t’,实现此操作的语句是()
答案是:vectorE(20,‘t’)
vector类中用于返回向量中第1个对象的方法是front( )。
答案是:front()
定义虚函数所用的关键字是()。
答案是:virtual
运算符[ ]只能用( )运算符来重载,不能用友元运算符来重载。
答案是:成员
C++中ostream类的直接基类是() 类。
答案是:ios
目前为: 1/3 页  首页   上页  下页 尾页