计算机科学C 考试复习题

上传人:101****457 文档编号:45698641 上传时间:2018-06-18 格式:PDF 页数:23 大小:229.58KB
返回 下载 相关 举报
计算机科学C  考试复习题_第1页
第1页 / 共23页
计算机科学C  考试复习题_第2页
第2页 / 共23页
计算机科学C  考试复习题_第3页
第3页 / 共23页
计算机科学C  考试复习题_第4页
第4页 / 共23页
计算机科学C  考试复习题_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《计算机科学C 考试复习题》由会员分享,可在线阅读,更多相关《计算机科学C 考试复习题(23页珍藏版)》请在金锄头文库上搜索。

1、第 1 页 共 23 页类定义的关键字是 (class) 类的访问权限有、和三种(private、public、protected) 类的成员分为和(数据成员、成员函数) 运算符与类的对象一起使用,运算符与指向类的对象的指针一起使用,可以访问类的 成员( 、-) 类成员的默认访问方式是(私有的) 要存取类内的私有成员,需要一个界面,称为(接口) 类完成了面向对象程序设计的特性(封装) 类的变量称为 (对象) 同一个类的两个对象,其数据成员是不同的,但是共享的 (成员函数) 一个和的关系,正如基本数据类型与该类型的变量一样,如 int x; (类、对象) 1是用来初始化类的数据成员的一种特殊的成

2、员函数。 (构造函数) 2一个类有个构造函数,有个析构函数。 (多、一) 3构造函数是被创建时自动执行,对象消失时自动执行的成员函数称为 (对象、析构 函数) 设 p 是指向一个类动态对象的指针变量,则执行delete p;语句时,将自动调用该类的 (析构函数) 对一个类中的数据成员的初始化可以通过构造函数中的实现,也可以通过构造函数的 实现 (初始化表、函数体) 拷贝构造函数的参数通常是 (某个对象的引用名) 类中常量数据成员的初始化工作必须在完成 (构造函数初始化表) 类中对象数据成员的初始化工作必须在完成 (构造函数初始化表) 类有两种用法:一种是类的实例化,即生成类的对象;另一种是通过

3、派生出新的类 (继 承) 如果类继承了类,则类称为,类称为 (派生类、基类) 语言提供的机制允许一个派生类继承多个基类,即使这些基类是相互无关的 (多 重继承) 面向对象程序设计的大机制为:、 (封装、继承、多态) 如果一个特定的类型当且仅当它提供了类型的行为时,则称类型是类型的 (子 类型) 声明虚函数的方法是在基类的成员函数原型前加上关键字(virtual) 在编译时就解决的函数调用称为联编; 在运行时才解决的函数调用称为联编 (静态、 动态) 是一个在基类中说明的虚函数,但未给出具体的实现,要求在其派生类实现 (纯虚函数) 在类定义中,将置于虚函数的函数原型的末尾可以声明该函数为纯虚函数

4、 (=0) 如果一个类中有一个或多个纯虚函数,则这个类称为 (抽象类) 类的静态成员分为和 (静态数据成员、静态成员函数) 静态数据成员在定义或说明时,前面要加上关键字 (static) 类的成员函数不能对类中的非静态成员进行默认访问 (静态) 类的数据成员是类的所有对象共享的成员 (静态) 如果成员函数不需要访问类的成员,则可以把它声明为静态成员函数 (非静态) 友元可以是,也可以是 (友元函数、友元类) 友元函数类的成员函数 (是不是) 友元函数的声明可以放在类的部分,也可以放在类的部分,它们是没有区别的 (私 有、公有) 若需要把一个函数void fun();定义为一个类的友元函数,则在

5、类的定义中加入一条语 句: (friend void fun();)第 2 页 共 23 页如果说明类是类的友元类,则类的所有成员函数都是类的(友元函数) 类中可以有许多相同名称、但参数类型或个数不同的成员函数,称为 (函数重载) 设 a 和 b 是两个整型变量,我们用 a+b 的形式求这两个变量的和;设 c 和 d 为浮点型变量, 我们用 c+d 的形式求这两个变量的和显然运算符具有不同的用途,这是的例子 (运算 符重载) 运算符函数中的关键字是,它和运算符一起组成该运算符函数的函数名 (operator) 类中运算符重载一般采用两种形式:和(成员函数、友元函数) 运算符重载后,原运算符的优

6、先级和结合性改变 (会不会) 对于双目运算符,若重载为类的成员函数,有个参数;若重载为友元函数,则有个 参数 (1、2) 46执行语句“ x = (a = 4, b = a+);”后,变量 x、a、b 的值依次为。4,5,44,5,4 47表述“x 或 y 中有一个大于 z”的 C+语言表达式是。xzxz | yzyz 48执行语句“ y = (x = 3, z = -x);”后,变量的值依次为_。2,2,22,2,2 49设 x 为整型变量,表达数学关系式:13 19”则 a11值为。0 0 51若有定义:charu;intb;floatv;doubled; 则表达式 u * b + d -

7、 v 的值的类型为。doubledouble 52类的构造函数的主要作用是。对对象进行初始化对对象进行初始化 53C+将类继承分为和两种。单一继承,多重继承单一继承,多重继承 54派生类可以定义其_ _中不具备的数据和操作。基类基类 55operator 是 C+的一个关键字,它经常和 C+的一个运算符连用,构成一个运算符函数名。运 算符函数的返回类型不能是类型。voidvoid 56在继承机制下,当对象消亡时,编译系统先执行_的析构函数,然后再执行_的析 构函数。派生类,基类派生类,基类 57C+文件的两种类型,分别是和。字符文件,二进制文件字符文件,二进制文件 58在保护继承关系下,基类有

8、公有成员和保护成员将成为派生类中的成员,它们只 能由派生类的来访问。保护,成员保护,成员 59在私有继承关系下,基类的公有成员和保护成员将成为派生类中的成员,它们只能 由来访问。私有派生类的成员函数 60类的成员函数可以在定义,也可以在定义。类体内类体 外 一选择题 1下列变量名中, ( B)是合法的。 A.56AB._abcC.d-PtrD.while 2下列各种运算符中, ( A)优先级最高。 A. +B. int v1=0,v2=0,v3=0,v4=0; for (p;*p;p+) switch(*p) case a:v1+;break; case b:v3+;break; case e

9、:v2+;break; default: v4+; cout void main() char s=“12134211“,*p; int v1=0,v2=0,v3=0,v4=0;v1v2v3v4第 6 页 共 23 页for (p=s;*p;p+)2434 switch(*p) case 1:v1+; case 3:v3+; case 2:v2+; default:v4+; coutt;24.在 if 语句中的表达式是(D)。 A.只能是表达式B.只能是关系表达式和逻辑表达式 C.只能是逻辑表达式D.可以是任意表达式25.在用关键字 class 定义的类中,以下叙述正确的是(A)。 A.在类中

10、,不作特别说明的数据成员均为私有类型 B.在类中,不作特别说明的数据成员均为公有类型 C.类成员的定义必须是成员变量定义在前,成员函数定义在后 D.类的成员定义必须放在类定义体内部 1 12 23 34 45 56 67 78 89 9101011111212131314141515B BC CC CB BD DC CD DC CD DB BB BB BB BC CA A1616171718181919202021212222232324242525C CA AA AC CB BB BC CC CD DA A 程序阅读与分析 1函数 fun 用以求某正整数的阶乘值。 #include void

11、 fun(n)doublefun(intn) int i; double f=0;double f=1.0; if(nn; cout void sort ( int p,int n)void sort (int p,int n) int i,j,temp; for (i=1;ipj) temp=pi;pi=pj;pj=temp; void main( void) int a16=1,3,2,5,4,6,*pi,i; pi=a10;pi=a1; sort (pi,6); for (i=0;i class one public: int a1=0,a2; int a1,a2; void initi

12、al(int x1,int x2)one(int x1,int x2) a1=x1; a2=x2; ; void main() one data(2,3); cout #include #include class Tpoint double x,y; public: Tpoint(double a,double b) x=a;y=b; friend double distance(Tpoint a,Tpoint b); ; double Tpoint:distance(Tpoint a,Tpoint b) doubledistance(Tpoint a,Tpoint b) double di

13、st; dist=sqrt(a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y); return dist; void main() Tpoint p1(2,2),p2(5,5); cout int fun(char s)/*s or s int i=0; while(si!=n)/0 i+; return i; void main() char s80; cin.getline(s,80);/读一行字符 cout double fun(double x,double y)/ fun(double x,double y=2) int i; double s=1;第 9

14、页 共 23 页for(i=1;i class Point private: int x,y; public:/插入 void init(int a,int b)/Point x=a;y=b; void show() cout classAmplifier float invol,outvol; public: Amplifier(float vin,float vout) invol=vin;outvol=vout; float gain(); ; Amplifier:float gain()/ floatAmplifier: gain() return outvol/invol; void main() Amplifier amp(5.0,10.0); cout“ void main( ) int I; for(I=1;I void fun( ); int n=5; void main() int n=10; cout int b=5; intfun(int n); void main() int i; for(i=0;i int gcd(int m,int n) if(m%n=0)returnn; else returngcd(n,m%n); void main() int x=40,y=116; cout #include

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


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

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