C + + 复习资料(4页).doc
-C + + 复习资料-第 4 页C + + 复习资料一、选择题1 程序中的预处理命令是指以( )字符开头的命令。A B# C$ D%2 空白符是( )符的统称。A空格、制表、回车 B空格、制表、逗号C空格、回车、分号 D冒号、制表、回车3 在#include 命令中不可以包含( )。A头文件 B程序文件 C用户头文件 D目标文件4 一个程序中必须有并且只有一个命名为( )的函数。AMain Bmain Cvoid Dintmain5 C + +程序的扩展名为( )。A.obj B.exe C.cpp D.c6 在VC环境下,为运行一个程序而建立的工作区的扩展名为( )。A.obj B.exe C.dsw D.sp7 数据类型int、char、float、double的类型长度之和为( )。A10 B12 C16 D178 常数120和4.205的类型为( )。A整型和双精度型 B短整型和单精度型C长整型和双精度型 D整型和单精度型9 若x=25,则计算y=x + +表达式后,x和y的值分别为( )。A26和25 B25和26 C25和25 D26和2610 在switch语句中,每个语句标号中的关键字case后面的表达式必须是( )。A变量 B常量 C一般表达式 D函数调用11 当在程序中执行到( )语句时,只结束本层循环内语句或switch语句的执行。Acontinue Bbreak Cgoto Dreturn12 数组元素ai是该数组中的第( )个元素。Ai Bi+1 Ci1 D2*i13 在函数体中又调用自身函数则称为( )调用。A非递归 B直接递归 C间接递归 D末尾递归14 在定义类对象的语句执行时,系统在建立每个对象的过程中将自动调用该类的( )使其初始化。A构造函数 B析构函数 C复制函数 D赋值函数15 若需要把一个类AB定义为另一个类CD的友元类,则应在类CD的定义中加入一条语句声明为( )。Afriend AB; Bfriend class AB;Cclass AB; Dfriend class CD;二、填空题1 C + +开发程序过程一般要经过 编辑 、 编译 、 链接 、 执行 四个步骤。2 在面向对象程序的设计中,把实体的属性和行为组织在一个模块内的机制叫 封装 。3 在C + +中有两种注释方式,对单行的注释,采用 / 比较适合,对多行的注释,采用 /* */ 比较合适。4 C + +中标识符中的大写与小写字母是 区别的。(“有”或“无” )5 指针变量所占的内存空间与指针的类型 。 (“有关”或“无关” )6 C + +类中可以包含 公有 和 私有 两种具有不同访问控制权限的成员。7 构造函数是和 类 同名的函数。8 友元函数是可以直接访问类的私有成员的 非本类 函数。9 如果说明类B是类A的友元类,则类B是所有成员函数都是类A的 友元函数 。10 类的 静态 数据成员是类的所有对象共享的成员。三、简答题1 如何理解面积对象程序设计?2 什么是构造函数和析构函数,各有什么作用?四、编程题设计一个点类(Point),编写一个程序,求两个点之间的距离。#include <iostream.h>#include <math.h>class Point int x,y;public:Point(int i,int j)x=i;y=j;int getx()return x;int gety()return y;void disp() cout<<"("<<x<<","<<y<<")"float distance(Point &p1,Point &p2) float d; d=sqrt(p1.getx()-p2.getx()* (p1.getx()-p2.getx()+(p1.gety()-p2.gety()* (p1.gety()-p2.gety(); return d;void main()Point p1(2,2),p2(5,5);p1.disp();cout<<"与"p2.disp();cout<<"之间距离="<<distance(p1,p2)<<endl;