版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2014年4月面向对象程序设计试卷A第一部分 选择题一、单项选择题在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题卷”上的相应字母涂黑。错涂、多涂或未涂均无分。1面向对象程序的基本元素是A类B对象C程序D方法2表达式 long(int var) 也可表示为Aint var = long; Bint var(long) C(long)int var D以上都不是3要让一个类中的所有对象具有共同的数据,应使用A常数成员变量 B私有数据成员 C静态数据成员 D公有数据成员4在C+中,头文件扩展名是AcppBhClibDobj5下列数据类型中不属于C+语言的基本数据类型是A字符
2、类型B整型类型C枚举类型D逻辑类型6设已有函数int min(int,int),该min函数功能为返回两个参数中的较小值,若求22,59,70三者中最小值,下列表达式不正确的是Aint m=min(22,59,70);Bint m=min(min(22,59),70);Cint m=min(22,min(59,70);Dint m=min(59,min(22,70);7对于下面的函数原型声明:void testDefautParam(int a, int b=7, char z='*'); 下列函数调用中,不合法的是AtestDefautParam(5); BtestDefau
3、tParam(5,8);CtestDefautParam(5,'#'); DtestDefautParam(0,0,'*');8已有函数double Fun1(int,int);下列函数中不可以定义为Fun1函数的重载函数的是Aint Fun1(int,int,int); Bint Fun1(int,int);Cdouble Fun1(double,double); Ddouble Fun1(int,double);9有关析构函数的说法,不正确的是A析构函数有且仅有一个B析构函数和构造函数一样可以有形参C析构函数的功能是在系统释放对象之前作一些内存清理工作D析构
4、函数无任何函数类型10类定义的内容允许被其对象无限制地访问的是Aprivate 部分 B protected 部分 Cpublic 部分 D以上都不对11C+语言可用p.a的形式访问派生类对象p的基类成员a,其中a是 A私有继承的公有成员 B公有继承的公有成员 C公有继承的保护成员 D公有继承的私有成员12对于友元函数,下列描述中正确的A友元是本类的成员函数B友元不是本类的成员函数C友元不是函数 D友元不能访问本类私有成员13关于成员函数的重载,说法正确的是A就是在类中设计多个函数名相同,参数个数及类型也相同的函数B析构函数可以重载C函数重载,要求函数名相同,但参数个数不同或参数个数相同但其类
5、型不同D构造函数不可重载14能实现对对象进行初始化功能的是A数据成员B构造函数C析构函数D静态成员函数15多继承派生类构造函数构造对象时,被最先调用的是A派生类自己的构造函数B虚基类的构造函数C非虚基类的构造函数D派生类中子对象类的构造函数 第二部分 非选择题二、填空题16面向对象程序设计有以下主要特点,即抽象、封装、继承和 。17假设int a=l ,b=2;则表达式(+a/b) * b-的值为 。18无论是什么继承方式,派生类的成员不能访问基类 属性的成员。19静态成员属于 ,非静态成员属于对象。20用于输出表达式值的标准输出流对象是 21在函数模板的参数中,用class修饰的参数称为 参
6、数。22函数重载时,编译系统会根据形参的个数或 来区分。23编译时的多态性可以通过使用 来实现。24设要把一个文件输出流对象thisFile与文件“d:myfilecode.txt”相关联,所用的C+语句是 。25C+中,已知char *p1=new char(10); 则释放p1指向的内存使用语句是 。三、程序填空题26下列程序实现将用户输入的字符串逆向输出。例如:输入的字符串为ABCDE,则输出为EDCBA。#include <iostream>using namespace std;void main( )char str180; int k=s
7、trlen(str);for (int i=0; i<k; i+) 27下列程序实现了对复数进行加法运算,请将程序补充完整。#include<iostream>#include<fstream>using namespace std;Class complex /定义一个复数类 public: int real; int imag; complex(int r=0,int i=0) real=r;imag=i;complex operator+( ,complex& b) int r=a.real+b.real; int i=a.imag+b.imag;
8、return ;void main( ) complex x(1,2),y(3,4),z; z=x+y;cout<<z.real<<“+”<<z.imag<<“I”<<endl;28下面函数模板求,其中n为整数。#include <iostream>using namespace std; double power(T x, int n)if(x=0) return 0;if(n=0) return 1;T powerx=1;for (int i=0; i<abs(n); i+)powerx=powerx*x;if
9、(n<0)return 1.0/powerx;else 29在下面横线处填上适当内容,完成类B的定义。#include <iostream>using namespace std;class A public:A( ) a=0;A(int i) a=i;void print( ) cout<<a<<”,”; private: int a;class B:public A public:B( ) b1=b2=0;B(int i, int j, int k): b1=j; b2=k; /使a的值为ivoid print( )A:print( ); cout
10、<<b1<<”,”<<b2<<endl;private: int b1, b2;30完成下面类中的成员函数的定义。class triangleprivate:int base,height;/三角形的底和高public:triangle(int base,int height);triangle(triangle &t);triangle:triangle(int a,int b)base=a; =b;triangle:triangle( )base =t. base;height =t. height;30以下程序是定义一个累加器类su
11、mA,对其重载运算符“+”,请填空。class sumA private: int n;public:sumA() n=0;sumA(int i) n=i; /运算符重载函数sumA t; t.n=n+a.n; /函数返回void disp() cout<<"n="<<n<<endl;void main()sumA k1(7),k2(27),k3;k3=k1+k2;k1.disp(); k2.disp(); k3.disp(); 四、程序分析题31写出下列程序的运行结果:#include <iostream>using nam
12、espace std;void swap(int x, int y)int t;t=x; x=y; y=t;void main( )int a=80, b=100;cout<<”a=”<<a<<”,b=”<<b<<endl;swap(a,b);cout<<”a=”<<a<<”,b=”<<b<<endl;32写出下列程序的运行结果:#include <iostream>using namespace std;class BASE public:BASE( ) cou
13、t<<”BASE”;class DERIVED : public BASE public: DERIVED ( ) cout<<” DERIVED”;void main( )DERIVED obj;33写出下列程序的运行结果:#include <iostream>using namespace std;class A public:A( ) cout<<”A”; A( ) cout<<”-A”; ;class B : public AA* p; public:B( ) cout<<”B”; p=new A( ); B( )
14、 cout<<”-B”; delete p; ;void main( )B obj;五、编程题34编写一个函数int StrNum(char *s, char *subs),其功能是:统计子字符串subs在字符串s中出现的次数。35定义一个Point类,派生出圆Circle类,并增加一函数Area()计算圆的面积。不要求定义测试类。答案第一部分 选择题一、单项选择题12345BCCBC678910ACBBC1112131415BBCBB 第二部分 非选择题二、填空题16多态17218 Private 或 私有19类20cout21模板22形参的类型 或 类型23重载24 thisF
15、ile.open(“d:myfilecode.txt”)25 delete p1三、程序填空题26 cin>>str;cout<<strk-i-1;27 complex &a complex(r,i) 28template <class T>return powerx;29int i A(i)30 height triangle &t 30sumA operator + (sumA a) return t; 四、程序分析题31a=80,b=100a=80,b=10032DERIVEDBASE33ABA-B-A-A五、编程题34#in
16、clude <iostream>using namespace std;int StrNum(char *s, char *subs) /1分int n=0;int h1,h2;int p1,p2;h1=strlen(s);h2=strlen(subs);p1=0;while (p1<h1) /1分p2=0;while (sp1=subsp2&&p2<h2&&p1<h1) /2分p1+; p2+;/1分if (p1=h1 && p2<h2) break; /1分if (p2=h2) n+;/1分elsep1=p1-p2+1; /1分return n/1分35#include <iostream>using namespace std;class Point public:Point(float ax , float ay)x
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 粮食流通统计考核制度
- 小学领导班子考核制度
- 医院统计人员考核制度
- 部门经理月度考核制度
- 整形医院绩效考核制度
- 物业管理考核制度范本
- 客运企业监督考核制度
- 非领导公务员考核制度
- 申请不纳入年度考核制度
- 新疆综治中心考核制度
- 兴东线泰州段航道整治工程环评资料环境影响
- 桡骨远端骨折中医护理
- 2025 士兵考学英语冲刺卷
- 2025年湖南劳动人事职业学院高职单招职业技能测试近5年常考版参考题库含答案解析
- 肺曲霉病护理
- 一把手讲安全课件:提升全员安全意识
- 四川省高职单招计算机类《Windows》历年考试真题试题库(含答案)
- 2024老旧小区改造质量验收规范
- 湖南单招信息技术基础知识题库及答案
- 初中物理一等奖教学案例 大气的压强获奖教学案例分析
- NB/T 11257-2023井工煤矿采掘工作面防治水安全条件评价
评论
0/150
提交评论