C__面向对象程序设计习题(详细讲解)

上传人:zw****58 文档编号:42986198 上传时间:2018-06-04 格式:DOC 页数:7 大小:34KB
返回 下载 相关 举报
C__面向对象程序设计习题(详细讲解)_第1页
第1页 / 共7页
C__面向对象程序设计习题(详细讲解)_第2页
第2页 / 共7页
C__面向对象程序设计习题(详细讲解)_第3页
第3页 / 共7页
C__面向对象程序设计习题(详细讲解)_第4页
第4页 / 共7页
C__面向对象程序设计习题(详细讲解)_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《C__面向对象程序设计习题(详细讲解)》由会员分享,可在线阅读,更多相关《C__面向对象程序设计习题(详细讲解)(7页珍藏版)》请在金锄头文库上搜索。

1、- 1 -C+C+面向对象程序设计面向对象程序设计 习题(详细讲解)习题(详细讲解) 一、一、单项选择题单项选择题1、下列关于 C+标识符的命名不合法的是 () C A. Pad B. name_1 C. A#bc D. _a12 2、若有以下类型标识符定义: ( )D int x=2; char w=a; float y=23.45f; double z=45.6712; 则表达式 w*x+y-z 的结果类型是 A. float B. char C. int D. double 3、对重载函数形参的描述中,错误的是 D A. 参数的个数可能不同 B. 参数的类型可能不同 C. 参数的顺序可能

2、不同 D. 参数的个数、类型、顺序都相同,只是函数的返回值类型不同 4、以下能正确定义数组并正确赋初值的语句是 D A. int N=5,bNN; B. int a2=1,3,4,5; C. int c2=1,2,3,4; D. int d32=1,2,3,4; 5、下列给字符数组进行的初始化中,不正确的是 D A. char s1=“abcd“; B. char s23=x,y,0; C. char s3=a,x,y,0; D. char s46=“xyz“,“mnp“; 6、通常的拷贝构造函数的参数是 C A 某个对象名 B某个对象成员名 C 某个对象的引用 D某个对象的指针名 7、关于构

3、造函数特点的描述中,错误的是 A A. 定义构造函数必须指出类型 (构造函数特点是无返回类型) B. 构造函数的名字与该类的类名相同 C. 一个类中可定义 0 至多个构造函数 (不写构造函数,系统会自动生成一 个空的构造函数) D. 构造函数是一种成员函数 (特殊的成员函数) 8、下面程序的运行结果为 C #include int add(int a,int b); void main() extern int x,y; couta 表示从键盘上读入一个_字符串_ 到数组 a- 3 -中。 3、若希望用一个已有对象来构造另一个同类型的对象,可以使用_拷贝构 造函数_来实现。 4、静态成员(st

4、atic)属于_类_ ,而不属于_任何一个对象_ ,它被 同一个类的所有对象共享。 5、类的继承方式有_ 继承、_ 继承和_ 继承。 public(或公有)private(或私有) protected(或保护) 6、重载运算符的含义必须清楚,不能有_二义性_ 。 7、按照联编进行阶段的不同,联编方法可分为两种: _动态联编_ 和_ 静态联编_ 。 8、当基类中的某个成员函数被声明为虚函数后,此虚函数就可以在一个或 多个派生类中被重新定义,在派生类中重新定义时,其函数原型,包括返回 类型、_函数名_ 、_参数个数_ 、参数类型以及参数的顺序都必须与基 类中的原型完全相同。 9、C+的 I/O 是

5、以 字节流 的形式实现的,每个 C+编译系统都带有一个面 向对象的输入/输出软件包,这就是 I/O 流类库。 三、判断题三、判断题1、C+语言支持封装性和继承性,不支持多态性。 2、关系运算符可以用来比较两个字符的大小,也可用来比较两个字符串的 大小。) 3、字符串“sdfgh“的长度是 5。占用空间是 6,字符串有个结尾符号占空 间。 4、引用和指针都可作函数参数。 5、友元函数说明在类体内,它是一种成员函数。说明(定义)在类外, 声明在类里面 6、友元类必须被说明为公有成员。 7、纯虚函数是在基类中说明的虚函数,它在该基类中没有定义具体的操作 内容。 8、析构函数不能被继承。 9、运算符重

6、载以后,其优先级和结合性都不能改变。 10、在 C+中,函数名实际上是一个指针,它指向函数的入口。 四、分析程序,回答所提出的问题四、分析程序,回答所提出的问题1、 #include class B; class A public: A(int i) a=i; friend int F(A private: int a;- 4 -; class B public: B(int i) b=i; friend int F(A private: int b; ; int F(A void main() A n1(10); /a=10 B n2(8); /b=8 cout int func(int a

7、) int b=0;- 5 -static int c=4; 静态变量 b+; c-; return(a+b+c); void main( ) int a=2; for(int j=0;j class X public: X(int i) x=i; cout:22,called /析构函数的调用顺序与构造函数调用顺序相反 x:40,called- 6 -xx; while(x!=-1) b+n=x; cinx; for(int i=1,j=0;i class Date private: int year,month,day; public: Date(int y, int m, int d) year=y; month=m; day=d; void nextday(); void display() couttotaldaysleapmonth-1) day=1; month+; if(month12) month=1;year+; void main() int d,m,y; coutymd; Date d1(y,m,d); cout“今天是:“; d1.display(); d1.nextday(); cout“明天是:“; d1.display();

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

当前位置:首页 > 高等教育 > 其它相关文档

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