欢迎来到天天文库
浏览记录
ID:26768194
大小:172.00 KB
页数:41页
时间:2018-11-29
《在线考试系统c++题库填空题》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、二、填空题1、设有定义语句:inta=12;,则表达式a*=2+3的运算结果是______。答案:60根据运算的优先级和结合性,可以将表达式的计算顺序规则总结为以下3条:(1)优先计算带有括号的子表达式。(2)在没有括号的部分,依照运算优先级,由高到低进行计算。(3)具有相同优先级的运算符,按照结合性规定,依次进行计算。本题中*=的结合性是右结合,所以表达式a*=2+3相当于a=a*(2+3),所以a=60。知识点:C++部分/数据类型、表达式和基本运算/掌握C++运算符的种类、运算优先级和结合性2、从实现的角度划分,C++所
2、支持的两种多态性分别是______时的多态性和运行时的多态性。答案:编译在C++语言中,多态性可分为两类:编译时的多态性和运行时的多态性。编译时的多态性是通过函数重载和模板体现的。运行时的多态性是通过虚函数体现的。知识点:C++部分/了解多态性概念/虚函数机制的要点_3、将一个函数声明为一个类的友元函数必须使用关键字______。答案:friend友元函数不是当前类的成员函数,而是独立于当前类的外部函数(包括普通函数和其他类的成员函数),但它可以访问该类的所有对象的成员,包括私有成员、保护成员和公有成员。友元函数要在类定义时声
3、明,声明时要在其函数名前加上关键字friend。该声明可以放在公有部分,也可以放在私有部分。友元函数的定义既可以在类内部进行,也可以在类外部进行。知识点:C++部分/熟练掌握类与对象的相关知识/友元函数和友元类_4、请按下面注释的提示,将类B的构造函数定义补充完整。classA{inta;public:A(intaa=0){a=aa;}};classB:publicA{intb;Ac;public://用aa初始化基类A,用aa+1初始化类对象成员cB(intaa):______{b=aa+2;}};答案:A(aa),c(aa
4、+1)#c(aa+1),A(aa)41本题主要考查了类对基类及成员类的初始化。在类的构造函数中,要对类的基类及成员类进行初始化,可在构造函数后面加上初始化列表,函数与初始化列表间用冒号隔开,列表间各项用逗号隔开。要对基类进行初始化,可用形如:类名(初始化参数)的方式,要对内部对象初始化,可用形如:对象名(初始化参数)的方式。知识点:C++部分/熟练掌握类与对象的相关知识/构造函数与析构函数5、下列程序的输出结果是______。#includeusingnamespacestd;intmain(){inti=
5、5;int&r=i;r=7;cout<usingnamespacestd;classTest{public:Test()
6、{cnt++;}~Test(){cnt--;}staticintCount(){returncnt;}private:staticintcnt;};intTest::cnt=0;intmain(){cout<7、员的概念。在C++中可以用static关键字为类指定静态成员。静态成员为类的所有实例所共享。对于类中的静态函数,可以通过类名::函数名的方法来调用,并且该函数只能访问类中的静态数据。对于静态int型数据,在编译时将会被初始化为0,故在main函数中第一句将会输出"0";在Testt1,t2;语句中将创建类的两个实例,一共调用了两次构造函数,故类的静态数据cnt将会执行两次自加运算,变为2,main中接下来的两条语句通过new方法也创建了该类的两个实例,此时cnt变为4,故第二次执行输出时将输出"4";接下来执行了两条delet8、e语句,将销毁pT4,pT3所对应的实例,这将执行两次析构函数,故cnt的值将变为2,最后的一条输出语句将输出"2"(后面有回车)。知识点:C++部分/熟练掌握类与对象的相关知识/对象和对象指针的定义与使用7、下面是用来计算n的阶乘的递归函数,请将该函数的定义补充完整。(注:
7、员的概念。在C++中可以用static关键字为类指定静态成员。静态成员为类的所有实例所共享。对于类中的静态函数,可以通过类名::函数名的方法来调用,并且该函数只能访问类中的静态数据。对于静态int型数据,在编译时将会被初始化为0,故在main函数中第一句将会输出"0";在Testt1,t2;语句中将创建类的两个实例,一共调用了两次构造函数,故类的静态数据cnt将会执行两次自加运算,变为2,main中接下来的两条语句通过new方法也创建了该类的两个实例,此时cnt变为4,故第二次执行输出时将输出"4";接下来执行了两条delet
8、e语句,将销毁pT4,pT3所对应的实例,这将执行两次析构函数,故cnt的值将变为2,最后的一条输出语句将输出"2"(后面有回车)。知识点:C++部分/熟练掌握类与对象的相关知识/对象和对象指针的定义与使用7、下面是用来计算n的阶乘的递归函数,请将该函数的定义补充完整。(注:
此文档下载收益归作者所有