C++模拟测试题

上传人:cn****1 文档编号:561798381 上传时间:2023-02-11 格式:DOC 页数:6 大小:28.51KB
返回 下载 相关 举报
C++模拟测试题_第1页
第1页 / 共6页
C++模拟测试题_第2页
第2页 / 共6页
C++模拟测试题_第3页
第3页 / 共6页
C++模拟测试题_第4页
第4页 / 共6页
C++模拟测试题_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《C++模拟测试题》由会员分享,可在线阅读,更多相关《C++模拟测试题(6页珍藏版)》请在金锄头文库上搜索。

1、1类中定义的成员,其默认的访问属性是 D 。A) public B)friend C) protected D)private 2下列关于类和对象的叙述中,错误的是 B 。 A) 对象是类的具体实例 B) 一个类只能有一个对象 C) 类是对某一类对象的抽象 D) 类和对象的关系是数据类型与变量的关系 3若需要把一个类外定义的成员函数指明为内联函数,则必须把关键字 _C_ 放在函数原型或函数头的前面。A) in B) inLine C) inline D) InLiner 4若一个函数功能很简单,但要求被频繁调用,则最好定义其为 B 。A) 重载函数 B) 内联函数 C) 递归函数 D) 嵌套函

2、数 5定义p并使p指向动态空间中的包含20个整数的数组所使用的定义语句为 a 。A) int *p = new int20; B) int *p = new int(20); C) int *p = new 20; D) *p = new int20;6假设AB为一个类,则该类的拷贝构造函数的声明语句为 _c_ 。A) AB&(AB x); B) AB(AB x); C) AB(AB &x); D) AB(AB *x); 7面向对象程序设计思想的主要特征中不包括 d 。A)封装性 B)多态性 C)继承性 D)功能分解, 逐步求精 8一维整型数组a的正确定义是 d 。A) int a(10);

3、B) int n; cinn; int an;C) int n=10; int an; D) const int SIZE=10; int aSIZE;9下列静态数据成员特性中, c 是错误的。A) 说明静态数据成员时前边要加修饰符static;B) 静态数据成员要在类体外进行初始化;C) 静态数据成员不是所有对象共有的;D) 引用静态数据成员时,要在静态数据成员名前加和作用域分辨符。10下列各种函数中, a 不是类的成员函数。A)友元函数 B)析构函数 C) 构造函数 D)拷贝构造函数11C+语言中规定,函数的返回值的类型是由 c 。A) return语句中的表达式类型所决定 B) 调用该函

4、数时的主调用函数类型所决定 C) 在定义该函数时所指的数据类型所决定 D) 调用该函数时系统临时决定1一般说来,一个C+ 程序的开发步骤依次为: 编写 、编译、 连接 、运行和调试。2在C+ 中,有两种给出注释的方法。一种是沿用C语言的注释符, 即 “/” 。另一种是从它开始,直到它所在行尾的字符都为注释的注释符,即 “/*/” 。3C+中的类拥有两类成员,它们是 _数据_ 成员 和 _函数_ 成员 。4如果类A继承了类B,则类A称为 子 类(或派生类),类B称为 父 类 (或基类)。5在C+程序中,对刚创建的对象进行初始化的工作由 构造 函数来完成;而对象被删除前的一些清理工作则是由 析构

5、函数来完成的。6当成员函数被调用时,系统自动向它传递一个隐含的指针指向调用它的对象,该指针称为 _this_ 指针。动态绑定是在程序 _运行_ 阶段时完成的。7一般情况下,按照面向对象编程方法的要求 ,把类中数据成员的访问控制属性定义为 _私有_ 类型,而把成员函数的访问控制属性定义为 _公有 _ 类型。1简述“构造函数”和“析构函数”在特征、作用上的区别。答:构造函数和析构函数是在类体中说明的两种特殊的成员函数。构造函数的功能是在创建对象时,使用给定的值来将对象初始化。析构函数的功能是用来释放一个对象的。在对象删除前,用它来做一些清理工作,它与构造函数的功能正好相反。构造函数的特点如下: (

6、1)构造函数是成员函数,函数体可写在类体内,也可写在类体外。 (2)构造函数是一个特殊的函数,该函数的名字与类名相同,该函数不指定类型说明,它有隐含的返回值,该值由系统内部使用。该函数可以有一个参数,也可以有多个参数。 (3)构造函数可以重载,即可以定义多个参数个数不同的函数。 (4)程序中不能直接调用构造函数,在创建对象时系统自动调用构造函数。 析构函数的特点如下: (1)析构函数是一个特殊的成员函数,它的名字同类名,并在前面加“”字符,用来与构造函数加以区别。析构函数不指定数据类型,并且也没有参数。 (2)一个类中只能定义一个析构函数,析构函数不能重载。 (3)析构函数可以被调用,也可以由

7、系统调用。在下面两种情况下,析构函数会被自动调用。一是如果一个对象被定义在一个函数体内,则当这个函数结束时,该对象的析构函数被自动调用;二是当一个对象是使用new运算符被动创建的,在使用delete运算符释放它时,delete将会自动调用析构函数。 1源程序如下: #include voidfun(int&a,int&b) coutin fun: a,bendl; a -= 10; b += 21; void main( )intx=13 , y=15 ; fun(x, y); coutin main: x,yendl;运行结果:in fun: 13,15in main: 3,362 源程序如

8、下:#include class AB public : AB( int n = 20 , int m = 40 ) ; AB( ) ; void Set( int n , int m ) x = n ; y = m ; private : int x, y ; ; AB:AB( int n , int m ) Set( n , m ) ; cout“Construct : x=” x “, y=” y endl ; AB : AB( ) cout“Destruct : x=” x “, y=” y endl ; void main( ) AB x ( 3 ) ; AB y ( 4 , 5 )

9、 ; 运行结果:Construct : x=3, y=40Construct : x=4, y=5Destruct : x=4, y=5Destruct : x=3, y=401下面程序的运行输出结果为:21+35=56。请补全exam类。#include class exam public: void set(int x, int y)a=x;b=y; void show()int sum;sum=a+b;couta”+”b”=”sumendl;private:int a,b;void main( ) exam ex ; ex . set ( 21 , 35 ) ; ex . show (

10、) ; 2. 定义一个复数类 Complex ,重载运算符 “-” ,使之能用于复数的减法运算,将运算符函数重载为类 Complex 的非成员、非友元的普通函数,并在main 函数中实现两个复数 3+4i 与 2-i 的相减运算。 类 Complex 的公有成员函数 display 用于输出一个复数的实部和虚部,输出格式不限。#includeclass Complex private: float real,image; public: Complex(float r=0,float i=0)real=r;image=i; void display(); void show(int i); C

11、omplex operator - (Complex &c);void Complex:show(int i) coutci=real+imageiendl;void Complex:display() coutC3:image=image,real=realendl;Complex Complex:operator - (Complex &c) Complex t; t.real=real-c.real; t.image=image-c.image; return t;void main() Complex c1(3,4),c2(2,-1),c3; c3=c1-c2; c3.show(3); c3.display();

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

当前位置:首页 > 中学教育 > 试题/考题 > 初中试题/考题

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