模拟题三及参考答案

上传人:油条 文档编号:116417664 上传时间:2019-11-16 格式:DOCX 页数:8 大小:24.16KB
返回 下载 相关 举报
模拟题三及参考答案_第1页
第1页 / 共8页
模拟题三及参考答案_第2页
第2页 / 共8页
模拟题三及参考答案_第3页
第3页 / 共8页
模拟题三及参考答案_第4页
第4页 / 共8页
模拟题三及参考答案_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《模拟题三及参考答案》由会员分享,可在线阅读,更多相关《模拟题三及参考答案(8页珍藏版)》请在金锄头文库上搜索。

1、模拟题三及参考答案1. C+对C语言作了很多改进,下列描述中_使得C语言发生了质变,即从面向过程变成又面向对象(2分)A.增加了一些新的运算符B.允许函数重载,并允许设置默认参数C.规定函数说明必须用原型D.引进了类和对象的概念2.按照标识符的要求,_符号不能组成标识符。(2分)A.连接符B.下划线C.大小写字母D.数字字符3.选择出合法的if语句(设有int x,a,b,c;)。(2分)A.if(a=b)x+;B.if(a=b)x+;C.if(ab)x+;D.if(a=b)x+;4.下列while循环的次数是_。While (int i=0) i-;(2分)A.0B.1C.5D.无限5.下列

2、_为一个已有的数据类型另外命名。(2分)A.enumB.structC.typedefD.union6表达式184*Sqrt(4.0)5值的数据类型是_。(2分)A.intB.floatC.doubleD.不确定7sizeof(double)是一个_表达式。(2分)A.整型B.双精度C.不合法D.函数调用8.内联函数定义中,_不正确。(2分)A.内联函数体内不能有循环语句和switch语句。B.执行时在调用处用函数体进行替换。C.内联函数的声明必须出现在内联函数第一次被调用之前。D.对内联函数不能进行异常接口声明。9.函数不可以_。(2分)A.嵌套调用B.直接递归调用C.间接递归调用D.主函数

3、调用主函数10.有关函数重载的描述哪些是正确的?(2分)A.对不同类型的数据进行相同的操作需定义名称完全不同的函数。B.对不同类型的数据进行相同的操作需定义名称相同的函数。C.对相同类型的数据进行不同的操作需定义相同的函数。D.对相同类型的数据进行相同的操作需定义完全不同的函数。11.下列函数中,_不能重载。(2分)A.成员函数B.非成员函数C.析构函数D.构造函数12.关于虚函数的描述中,_是正确的。(2分)A.虚函数是一个static类型的成员函数B.虚函数是一个非成员函数C.基类中说明了虚函数后,派生类中与其对应的函数可不必说明为虚函数D.派生类的虚函数与基类的虚函数具有不同的参数个数和

4、类型13.下列运算符中,_运算符在C+中不能重载。(2分)A.&B.C.:D.new14. C+语言本身没有定义I/O操作,但I/O操作包含在C+实现中。C+标准库iostream库提供了基本的I/O类。I/O操作分别由两个类istream和ostream提供,由它们派生出一个类_,提供双向I/O操作。使用I/O流的程序需要包含iostream.h。(2分)A.iostreamB.iostream.hC.ostreamD.cin15.友元关系是:(2分)A.单向且能传递B.双向且不能传递C.单向且不能传递D.双向且能传递16.在C类中可以包含_种具有不同访问控制权的成员。(3分)A.私有B.公

5、有C.保护D.继承17.函数模板的优点_。(3分)A.创建通用功能的函数B.支持多种不同形参C.任何子程序调用只要一个模板函数即可D.简化重载函数的函数体设计18.对某具体问题进行抽象分析的结果是通过_来描述和实现的(2分)19.类成员的访问控制属性中私有类型的说明用_(2分)20.多态是通过_函数和虚函数等技术来实现的(2分)21.成员函数类外实现时函数名前必须使用_来限定(2分)22.构造函数在定义对象时由_调用(2分)23.类模板定义中使用_关键字(2分)24.对象的生存期可以分为静态和_两种(2分)25.全局变量是具有_作用域的变量(2分)26. C+程序按结构可划分为:类_文件、类定

6、义文件和类使用文件(2分)27.利用I/O流类库中的操纵符_可以设置输出宽度。(2分)28.利用I/O流类库中的格式标志值_设置以右对齐格式输出数据。(2分)29.分析以下程序执行的结果(11分)#includeclass Sample int x,y; public: Sample() x=y=0; Sample(int a,int b) x=a;y=b; Sample() if(x=y) coutx=yendl; else coutx!=yendl; void disp() coutx=x,y=yendl; ;void main() Sample s1(2,3); s1.disp(); s

7、1.Sample();30.分析以下程序的执行结果(11分)#includeclass Sample int x,y; public: Sample() x=y=0; Sample(int a,int b) x=a;y=b; Sample() if(x=y) coutx=yendl; else coutx!=yendl; void disp() coutx=x,y=yendl; ;void main() Sample s1,s2(2,3); s1.disp(); s2.disp();31.编写一个程序,已有若干学生数据,包括学号、姓名、成绩,要求输出这些学生数据并计算平均分。(20分)参考答案

8、:1D2A3A4A5C6C7A8B9D10B11C12C13C14A15C16ABC17ABD18类19private20重载21类域标记22系统自动23template24动态25文件26申明27setw()28ios:right29.解:x=2,y=3x!=yx!=y本题说明了可以显式调用析构函数。首先定义了一个类Sample,在main()中定义了它的一个对象,定义s1对象时调用其重载构造函数(x=2,y=3),然后,调用其成员函数输出数据成员,然后调用一次析构函数,最后在退出程序时又自动调用析构函数,所以输出为: x=2,y=3 x!=y x!=y注意:析构函数不同于构造函数,析构函数

9、既能被显式调用,也能被隐式调用。30.解:x=0,y=0x=2,y=3x!=yx=y本题说明了析构函数的调用顺序,这里定义了两个对象,先顺序调用s1和s2对象的构造函数,再调用各自的成员函数disp(),最后顺序调用s2和s1的析构函数。所以输出为: x=0,y=0 x=2,y=3 x!=y x=y31.解:设计一个学生类Stud,除了包括no(学号)、name(姓名)、和deg(成绩)数据成员外。有两个静态变量sum和num,分别存放总分和人数,另有一个构造函数、一个普通成员函数disp()和一个静态成员函数avg(),它用于计算平均分。本题程序如下:#include#includeclas

10、s Stud int no; char name10; int deg; static int sum; static int num; public: Stud(int n,char na,int d) no=n;deg=d; strcpy(name,na); sum+=d; num+; static double avg() return sum/num; void disp() printf(%-5d%-8s%3dn,no,name,deg); ;int Stud:sum=0;int Stud:num=0;void main() Stud s1(1,Li,89),s2(2,Chen,78),s3(3,Zheng,94); printf(n学号姓名成绩n); s1.disp(); s2.disp(); s3.disp(); printf(平均分=%gnn,Stud:avg();本程序的执行结果如下:学号姓名成绩1 Li 892 Chen 783

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号