《2022年面向对象程序设计基础A.docx》由会员分享,可在线阅读,更多相关《2022年面向对象程序设计基础A.docx(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选学习资料 - - - - - - - - - 东莞理工学院(本科)试卷(A 卷)2022 -2022 学年第 2 学期_ _程 工 件 09软面对对象程序设计基础试卷线开课单位: 运算机学院 ,考试形式:闭、开卷,答应带入场题序一二三四五六七八总 分得分: 业 专 级 年评卷人院 学 机 算 计 : 别 系挑选题 全部为单项,请把结果写在本大题后面的答题纸内相应的横线上,写在其它地方无效,每道题2 分,共 50 分封1 以下表达中不正确选项:()题A 函数名属于用户标识符,其起名规章与变量相同答不B 形参只能是变量内C 为保证程序的正确运行,函数中定义的变量不能与其他函数中定义的变线: 号
2、 学量同名封D 函数中定义的变量可以与其他函数中定义的变量同名密2 有定义语句: int a=1,2,3,4,5,6,7,*p=A *q=&a5; ()就以下表达式中值不等于5 的是A *q- B *-q C -*q D q-p 3 以下表达中错误选项:()A 局部变量的定义可以在函数体内部B 全局变量的定义可以在函数以外的任何位置: 名姓C 同一程序中,全局变量和局部变量不能同名D 函数的形参属于局部变量4 以下表达中错误选项:()密A 变量的作用域取决于变量定义语句显现的位置B 同一程序中,全局变量的作用域肯定比局部变量的作用域大C 局部变量的作用域是在定义它的函数体内D 全局变量的作用域
3、是从定义位置开头至源文件终止5 关于 VC6建立的工程的说法,正确选项:()A 工程只能包含 .cpp 和.h 类型的文件B 工作区文件的后缀是 .dsp C 用鼠标双击工作区文件可以打开整个工程D 在 VC的 FileView中可以看到工程中全部的文件,包括工作区文件,工程文1 / 9 名师归纳总结 第 1 页,共 9 页- - - - - - -精选学习资料 - - - - - - - - - 件等 6 下面关于在 VC6环境下调试运行的说法错误选项()A 设置合适的断点 F9 ,按 Ctrl+F5 开头调试运行 B 设置合适的断点,按 F5 开头运行 C 调试时,可以随时观看断点处的变量
4、值 D 在调试运行过程中,可随时按下 Stop DebuggingShift+F5 终止调试运行 7 以下情形中,哪一种情形不会调用拷贝构造函数()A 用派生类的对象去初始化基类对象时 B 将类的一个对象赋值给该类的另一个对象时 C 函数的形参是类的对象,调用函数进行形参和实参结合时D 函数的返回值是类的对象,函数执行返回调用者时D 8 以下哪一关键字可用于重载函数的区分()A extern B static C const virtual 9 以下有关内联函数的表达中,正确选项()A 内联函数在调用时发生掌握转移B 使用内联函数有利于代码重用C 必需通过关键字inline来定义)D 是否最终
5、内联由编译器打算10 实现运行时多态的机制是(C 静态函数D 模版函A 虚函数B 重载函数数11 以下哪个符号(或组合)是作用域限定符(D )A - B . C : 12 以下关于 this指针的说法正确选项()A this指针存在于每个函数之中B 在类的非静态函数中this 指针指向调用该函数的对象C this 指针是指向虚函数表的指针D this 指针是指向类的函数成员的指针13 如有以下类定义class MyClass public: MyClass cout 1; );后,程序的输出结果是() ;就执行语句 MyClass a,b2,*p2A 11 B 111 C 1111 D 111
6、11 14 下面程序的输出结果是(#include using namespace std ;int i = 0;int funint n static int a = 2 a+;return a+n; 2 / 9 名师归纳总结 - - - - - - -第 2 页,共 9 页精选学习资料 - - - - - - - - - 程 工 件 09软void main D 2,2 int k = 5; int i = 2;k += funi; k += funi;cout k ; 线A 13 B 14 C 15 D 16 15 下面程序的输出结果是()#include using namespace
7、 std ;class A : 业 专 级 年public: A int i x = i; void dispa cout x “ , ” ; private : 院 学 机 算 计 : 别 系int x ; ;class B : public A 封 题public: 答Bint i : Ai+10 x = i; 不void dispb dispa; cout x endl; 内private : 线: 号 学封int x ;密 ;void main B b2 ;b.dispb; A 10,2 B 12,10 C 12,2 : 名 姓16 下面程序的输出结果是()#include 密usin
8、g namespace std ;class Base public: Baseint i cout i; Base 3 / 9 名师归纳总结 第 3 页,共 9 页- - - - - - -精选学习资料 - - - - - - - - - ;class Base1: virtual public Base public: Base1int i, int j=0 : Basej cout i; Base1 ;class Base2: virtual public Base public: Base2int i, int j=0 : Basej cout i Base2 ; ;class Der
9、ived : public Base2, public Base1 public: Derivedint a, int b, int c, int d : mem1a, mem2b, Base1c, Base2d, Basea cout b; private: Base2 mem2;Base1 mem1; ;void main Derived objD 1, 2, 3, 4; D 143212 A 134122 B 123412 C 14302022 17 下面程序的输出结果是()#include using namespace std ;int countp=0;class Point in
10、t X,Y;public: Pointint x=0,int y=0 X=x; Y=y ; PointPoint &pX=p.X;Y=p.Y;countp+; friend Point myfunPoint p1 ,Point p2 ,const Point &p3; ;Point myfunPoint p1,Point p2,const Point &p3 Point tmpp1.X+p2.X+p3.X,p1.Y+p2.Y+p3.Y;return tmp; void main 4 / 9 名师归纳总结 - - - - - - -第 4 页,共 9 页精选学习资料 - - - - - - -
11、- - 程 工 件 09软Point pp0,pp11,2,pp21;myfunpp0,pp1,pp2 ;std:coutcountpendl; A 0 B 4 C 3 D 6 18 下面程序的输出结果是()#include using namespace std ;void swap1 int &v1, int &v2 线int tmp = v2;v2 = v1 ;v1 = tmp ; void swap1 int *v1, int *v2 int tmp= *v2;*v2 = *v1 ;*v1 = tmp ; : 业 专 级 年void main int i = 10, j = 20; s
12、wap1i,j; swap1&i,&j;couti ” , ” jendl ;院 学 机 算 计 : 别 系 A 10,20 B 20,10 C 10,10 D 20,20 19 下面的程序段的运行结果为()封char str = job, *p = str;题cout *p+2 endl;答A 98 B 无输出结果 C 字符b的地址 D 字符b不20 double 型数据所占字节数是()内A 2 B 4 C 6 D 线: 号 学封8 密21 如变量都已经正确定义,以下表达式中非法的是()A a/=b+c B a % 4.0 C a=1/2*x=y=10 , x*3 D a=b=c 22 以下
13、选项中不是字符常量的是()A vB x6dC wD “ 0”23 以下非法的字符串常量为(): 名 姓A “”B “ It s”C “ m= abc”D “ $12.8 ”密24 对于类的常成员函数的描述正确选项()A 常成员函数不修改类的数据成员B 常成员函数可以对类的数据成员进行修改C 常成员函数只能由常对象调用D 常成员函数不能拜访类的数据成员25 使 用 如 setw 的 操 作 符 对 数 据 进 行 格 式 输 出 时 , 应 包 含 的 头 文 件 是名师归纳总结 5 / 9 第 5 页,共 9 页- - - - - - -精选学习资料 - - - - - - - - - ()B
14、 fstream C stdio D A iostream iomanip 挑选题答题纸:1 21 2 22 3 23 4 24 5 25 6 7 8 9 10 11 12 13 14 15 16 17 18 6 / 9 名师归纳总结 - - - - - - -第 6 页,共 9 页精选学习资料 - - - - - - - - - 19 20 程 工 件 09软上机编码试卷,共5 小题,共 50 分,请按要求答在给定的工程文件中提交; 本页不得撕掉 . 答本大题前请先交卷! . 请于考试终止前关闭你的工程,删去你的文件夹下的Debug 文件夹,然后把线你的整个工程文件夹打包成一个“.rar ”
15、 文件提交到下面服务器中相应的地方;. 服务器 ftp:/219.222.170.198提交考试结果的用户名及密码username/password : cs2022w/ cs2022w : 业 专 级 年. 你的程序不能有编译错误,否就以0 分记!以“202241404101 陈晓雪” 为例,提交的文件名应为“202241404101 陈晓雪 _面对对象A.rar ” ,解压后的文件夹也应为“202241404101陈晓雪 _面对对象 A” ; 注:中间没有空格! 院 学 机 算 计 : 别 系1 创建一个 VC6.0 工程;要求:以你的学号+姓名 +” _面对对象 A” 为工程名创建一个带
16、“Hello World ” 的 win32 掌握台应用程序;以“202241404101 陈晓封雪” 为例,所创建工程的名称为“202241404101陈晓雪 _面对对象 A” 10 分 题2 声明一个Point类,该类描述了直角坐标系中的一个点;成员变量为私有的答不内线double x,y; 成员函数包括不带参数的构造函数;带两个参数double x, 封double y 的构造函数,拷贝构造函数,分别取得x 和 y 值的函数getX 和密getY;10 分 : 号 学3 从第 2 题的 Point 类派生出一个新类 名为 Circle,该新类是描述圆的一个类,成员变量为私有的表示圆的半径
17、double r;并请写出一个成员函数getMaxY,返回该圆在 y 轴最高点的坐标; 10 分 : 名 姓4 运算符重载;假设obj 是第 3 题的 Circle类的对象, obj+ 是指把当前圆的密半径加 1,请实现这个 +运算符的重载; 10 分 7 / 9 名师归纳总结 第 7 页,共 9 页- - - - - - -精选学习资料 - - - - - - - - - 5 刚学会加减法的学校生都知道 1+1 = 2, 2- 1 = 1;但是他仍临时仍算不出 来 1 2 = -1,而会认为 1 2 是减不动的,所以得不出正确的结果;现要求你写一个学校生的减法函数int sumint x,
18、int y,当显现减不动的情形时抛出一个反常消息为“ 减不动” 的反常;并请在 消息; 10 分 main 函数中截获并显示该反常 请先撕掉本页,交卷,然后再答本大题 . . 请于考试终止前关闭你的工程,删去你的文件夹下的Debug 文件夹,然后把你的整个工程文件夹打包成一个“方;.rar ” 文件提交到下面服务器中相应的地. 服务器 ftp:/219.222.170.198提交考试结果的用户名及密码username/password : cs2022w/ cs2022w . 你的程序不能有编译错误,否就以 0 分记!以“202241404101 陈晓雪” 为例,提交的文件名应为“202241
19、404101 陈晓雪 _面对对象 A.rar ” ,解压后的文件夹也应为“202241404101陈晓雪 _面对对象 A” ; 注:中间没有空格! 1 创建一个 VC6.0 工程;要求:以你的学号+姓名 +” _面对对象 A” 为工程名创建一个带“Hello World ” 的 win32 掌握台应用程序;以“202241404101 陈晓雪” 为例,所创建工程的名称为“202241404101陈晓雪 _面对对象 A” 10 分 2 声明一个 Point 类,该类描述了直角坐标系中的一个点;成员变量为私有的double x,y; 成员函数包括不带参数的构造函数;带两个参数 double x,
20、double y 的构造函数,拷贝构造函数,分别取得 x 和 y 值的函数 getX 和getY;10 分 3 从第 2 题的 Point 类派生出一个新类 名为 Circle,该新类是描述圆的一个类,成员变量为私有的表示圆的半径double r;并请写出一个成员函数getMaxY,返回该圆在 y 轴最高点的坐标; 10 分 4 运算符重载;假设obj 是第 3 题的 Circle类的对象, obj+ 是指把当前圆的半径加 1,请实现这个 +运算符的重载; 10 分 5 刚学会加减法的学校生都知道1+1 = 2, 2- 1 = 1;但是他仍临时仍算不出来 1 2 = -1,而会认为 1 2 是减不动的,所以得不出正确的结果;现要 求你写一个学校生的减法函数 int sumint x, int y, 当显现减不动的情形时抛出一个反常消息为“ 减不动” 的反常;并请在 8 / 9 main 函数中截获并显示该反常名师归纳总结 - - - - - - -第 8 页,共 9 页精选学习资料 - - - - - - - - - 消息; 10 分 9 / 9 名师归纳总结 - - - - - - -第 9 页,共 9 页