欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    面向对象程序设计应试指导(本科).rtf

    • 资源ID:80597473       资源大小:573.17KB        全文页数:27页
    • 资源格式: RTF        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    面向对象程序设计应试指导(本科).rtf

    题 1#includevoid add(int&,int&)void main()int a=35,b=40;add(a,b);cout”a=”a”b=”b;void add(int&m,int&n)int temp=m;m=m+n;n=temp-n;【解答】a=75,b=-5题 2#includevoid main()const int num=500;int&x=num;int&y=num;+x;cout”x=”x”num=”num”y=”yendl;-y;-y;+x;+x;cout”x=”x”num=”num”y=”yendl;【解答】x=501 num=500 y=500 x=503 num=500 y=498题 3#includevoid main()int num=320;int&ref=num;coutref;ref=ref-120;cout”ref;【解答】320 200 280题 4#includevoid main()const int num=360;int&ref=num;coutrefendl;ref=ref*2;coutrefendl;coutnumendl;【解答】360 720 360题 5#includevoid main()int number;coutnumber;int*data=new int number;if(data)cout”enter data:”;for(int i=10;idatai;cout=0;i-)coutdata i“”;delete data;【解答】功能:将用户输入的一组整数反序输出题 6#includeclass Locationprivate:int x,y;public:void int(int a,int b)setx(a);sety(b);int setx()return x;int sety()return y;void setx(int a)x=a;void sety(int b)y=b;a,b;void main()a.init(58,85);b.init(88,76);cout”a.x=”a.setx()endl;cout”b.x=”b.setx()endl;【解答】a.x=58 b.x=88题 7class queueint q100;int rear,front;public:void init()rear=front=0;cout”init queue!”endl;void put(int i);void get();void queue:put(int i)if(rear=99)cout”full!”endl;return;elserear+;qrear=i;int queue:get()if(rear=front)cout”empty!”endl;return 0;elsefront+;return qfront;void main()queue a,b;a.init();b.init();a.put(10);a.put(20);b.put(20);b.put(40);cout”a queue:”a.get()”“a.get()endl;cout”b queue:”b.get()”“b.get()endl;【解答】init queue!init queue!a queue:10 20 b queue:20 40题 8C+语言中,封装是借助于(B)实现的。A、对象 B、类 C、数组 D、成员题 9如果类中成员没有使用关键字,则它们的访问权限默认定义为(D)。A、static B、protected C、public D、private题 10如果结构中成员没有使用关键字,则它们的访问权限默认定义为(C)。A、static B、protected C、public D、private题 11所有在函数中定义的变量,连同形式参数,都属于(A)。A、局部变量 B、全局变量 C、静态变量 D、寄存器变量题 12#includeclass exppint i;public:expp(int n)i=n;int gett()return i;int sqrtt(expp obj)return obj.gett()*obj.gett();void main()expp a(5),b(9);coutsqrtt(a)endl;coutsqrtt(b)endl;【解答】25 81题 13#includeclass locint x,y;public:void init(int ix,int iy);int setx();int sety();void loc:init(int ix,int iy)x=ix;y=iy;int loc:setx()return x;int loc:sety()return y;main()loc a,b;a.init(8,3);b.init(6,9);couta.setx()”“a.sety()endl;coutb.setx()”“b.sety()endl;【解答】8 3 6 9题 14#includeclass stackint st100;int top;public:stack()top=0;cout”init!”endl;stack()cout”no”endl;void push(int i)top+;sttop=i;int pop()int y;y=sttop;top-;return y;void main()stack a,b;a.push(5);a.push(6);b.push(8);b.push(9);couta.pop()”“a.pop()endl;coutb.pop()”“b.pop()endl;【解答】init!init!6 59 8nono题 15#includeclass testprivate:int num;int nno;public:test()cout”回收 num=”num”nno=”nnoendl;test(int m,int n=0)num=m;nno=n;cout”初始化 num=”num”nno=”nnoendl;void mian()test x(3,4);x=5;x=test(6,7);【解答】初始化 num=3 nno=4初始化 num=5 nno=0回收 num=5 nno=0初始化 num=6 nno=7回收 num=6 nno=7回收 num=6 nno=7题 16类型标识符 const 声明的变量必须在声明时(A),并且其值在程序中保持不变。A、初始化 B、私有化 C、公有化 D、局部化题 17C+使用新的动态内存分配运算符是(B)A、malloc()B、new C、const D、inline题 18已知程序段如下:class base public:int b;class base1:public base ;class base2:public base ;class base3:public base1,public base2public:int fun();设主函数有:int a;base3 d;下列语句正确的是(B)A、a=d.b;B、a=b.base1:b;C、a=d.base:b;D、a=b;题 19#includevoid main()int n=100;int&rn=n;n+;cout”n=”nendl;cout”rn=”rnendl;rn+;cout”n=”nendl;cout”rn=”rnendl;【解答】n=101rn=101n=102rn=102题 20#includevoid main()int n=10,*pn=&n,*&rn=pn;(*pn)+;cout”n=”nendl;(*rn)+;cout”n=”nendl;【解答】n=11n=12题 21若 example 是已定义的类,在程序结束之前,共计存在(C)对象。#includemain()example x(0);x=5;x.print();x=example(10);x.print();A、1 个B、2 个C、3 个D、4 个题 22#includevoid f(int a,int n,int&max,int&min)max=min=a0;for(int i=1;in;i+)if(maxai)min=ai;void main()int a10=2,5,2,9,0,8,6,1,7,4;int max,min;f(a,10,max,min);cout”max:”maxendl;cout”min:”minendl;【解答】max:9min:0题 23下面哪一种是类的析构函数的正确定义:(B)A、x:x(参数)B、void x:x(参数)C、x:x()D、void x:x()题 24#includeint n=0;int&f(int m)n+=m;return n;void main()f(10)+=20;cout”n=”nendl;【解答】n=30题 25#includeclass sampleint n;public:sample(int i)n=i;int getn()const return n;int add(const sample&s1,const sample&s2)int sum=s1.getn()+s2.getn();return sum;void main()sample s1(100),s2(200);cout”sum=”add(s1,s2)endl;【解答】sum=300题 26析构函数的作用是:(D)A、初始化对象B、复制对象C、对象赋值D、回收对象题 27当对象数组生命期结束之后,delete 将为动态数组的(B)调用一次析构函数。A、整体回收B、每个元素或对象C、某个元素D、使用题 28在类中说明的具有类类型的数据成员,成它们为:(B)A、初始成员B、对象成员C、成员函数D、内联成员题 29#includeclass sampleint n;public:sample()sample(int n)n=i;void add(sample&s1,sample&s2)this-n=s1.n+=s2.n;void disp()cout”n=”nendl;void main()sample s1(2),s2(5),s3;s3.add(s1,s2);s1.disp();s2.disp();s3.diap();【解答】n=7n=5n=7题 30#includeint f(int i)return +i;int g(int&i)return+i;void main()int a,b;a=b=0;a+=f(g(a);b+f(f(b);cout”a=”a”b=”bendl;【解答】a=3 b=2题 31#includeint&max(int&x,int&y)return(xy?x:y);void main()int n=2,m=10;max(n,m)-;cout”n=”n”,m=”mendl;【解答】n=2,m=9题 32一个类的友元函数能够访问该类的(D)A、私有成员B、保护成员C、共有成员D、所有成员题 33下面关于友元的描述中,错误的是(D)A、友元函数可以访问该类的私有数据成员B、一个类的友元类中的成员函数都是这个类的友元函数C、友元可以提高程序的运行效率D、类与类之间的友元关系可以继承题 34下面哪一种是对对象类的构造函数的定义:(B)A、void x:x(参数)B、x:x(参数)C、int x:x(参数)D、const x:x(参数)题 35下面关于构造函数的错误说法是(B)A、将对象中的数据成员初始化B、可以有返回类型C、对象开辟一块内存D、初始化时给对象一个标识符题 36#includeclass pointprivate:int x,y;public:point()point(int i,int j)x=i;y=j;void disp()cout”(“x”,”y”)”endl;point operator+(point&p)return point(x+p.x,y+p.y);void main()point p1(3,4),p2(2,9),p3;p3=p1+p2;p3.disp();【解答】5,13题 37#includeclass numberint x;public;number()x=0;number(int i)x=i;void disp()cout”x=”xendl;void operator+()x+;void operator+(int)x+=2;void main()number obj(5);obj.disp();+obj;obj.disp();obj+;obj.disp();【解答】x=5x=6x=8题 38静态联编所支持的多态性称为:(A)A、编译时多态性 B、运行时多态性 C、静态多态性 D、动态多态性题 39动态联编所支持的多态性称为:(B)A、编译时多态性 B、运行时多态性 C、静态多态性 D、动态多态性题 40对虚函数的调用使用(B)A、静态联编 B、动态联编 C、静态调用 D、动态调用题 41一个类中的虚函数说明只对(C)中重定义函数有影响。A、基类 B、外部类 C、派生类 D 抽象类题 42用于类中虚成员函数说明的关键字是:(A)A、virtualB、publicC、protectedD、private题 43编译时的多态性通过使用(C)获得。A、继承B、虚函数C、重载函数D、析构函数题 44在调用中对虚函数使用(D)可以强制 C+对该函数的调用使用静态联编。A、关键字 virtualB、指针C、引用D、成员名限定题 45#includeclass vectorint x,y;public:vector();vector(int i,int j)x=i;y=j;void disp()cout”(“x”,”y”)”endl;void main()vector A(1,2),B(4,2);cout”A”;A.disp();cout”B”;B.disp();A+=B;cout”A+=B:”;A.disp();A-=B;cout”A-=B:”;A.disp();【解答】A:(1,2)B:(4,2)A+=B:(5,4)A-=B:(1,2)题 46进行文件操作时需包含(B)文件。A、iostream.hB、fstre am.hC、stdio.hD、stdlib.h题 47下列哪种表达式是错误的(D)。A、coutstew(10)B、coutsetfill(“*”)C、cout.setf(iso:doc)D、coutB、:C、=D、题 49友元运算符obj 被 C+编译器的解释是(A)。A、operator(obj)B、operator(obj,0)C、obj.operator()D、obj.operator(0)题 50#includeclass pointprivate:int x,y;public:point(int n,int m);int getx()return x;int gety()return y;point();point:point(int n,int m):x(n),y(m)cout”initializing.”endl;cout”x=”xendl;cout”y=“yendl;point:point()cout”delete x=”getx()”,y=”gety()endl;void main()point a2=point(42,48),point(52,58);for(int i=0;i2;i+)cout”a“i”=(“ai.get()”,”;coutai.gety()”)”endl;【解答】initializing.x=42y=48initializing.x=52y=58a0=(42,48)a1=(52,58)delete x=52,y=58delete x=42,y=48题 51继承就是创建一个具有别的类的(B)的新类的能力A、名字和地址B、属性和行为C、数据和指针D、属性和引用题 52类的保护成员具有(C)双重角色A、公有成员和保护成员B、私有成员和保护成员C、公有成员和私有成员D、私有成员和不可访问题 53因为构造函数式不能继承的,故一个派生类智能调用(A)的构造函数。A、直接基类B、间接基类C、其派生子类D、别的类题 54如果派生类有对象成员,则说明对象时,构造函数的调用顺序是(A)A、先基类、再对象成员、后派生类B、先对象成员、再基类、后派生类C、先基类、再派生类、后对象成员D、先派生类、再基类、后对象成员题 55下列叙述不正确的是(D)A、子类要继承父类的能力,派生类一般用公有派生B、对基类成员的访问必须是无二义性的C、赋值兼容规则也适用于多重继承D、基类的公有成员在派生类中一定是公有的题 56下列说法正确的是(C)A、运算符不一定总是与类相联系的被重载B、运算符函数的返回类型与运算符函数被定义的类型无必然联系C、运算符函数不可能有默认参量D、重载运算符能改变运算符的优先权题 57显示报错信息,并终止对程序编译的指令是(C)A、#ifndefB、defineC、#errorD、#endif题 58使 p 只能指向整型常量(即 p 的对象不可改变)的语句是(A)A、const int*p;B、int*const p;C、const int*const p=100;D、const*int p=100;题 59下列不正确的函数原型及默认参数是(D)A、int sum(int x,int y);B、int sum(int,int);C、int sum(int x,int y=0,float z=0.0);D、int sum(int x=0,int y=0,float z);题 60#includeclass exampleprivate:int num;public:example(int n);void print();example();example:example(int n)num=n;cout”init”numendl;void example:print()coutnumendl;example:example()cout”destroy”numendl;main()example(0);x=5;x.print();x=example(10);x.print();【解答】init 0init 5destroy 55init 10destroy 1010destroy 10题 61#includeclass numberprivate:int val;public:number(int i)val=i;operator int();number:operator int()return val;class num:public numberpublic:num(int i):number(i);void main()num n(33);int i=n;couti+nendl;【解答】66题 62下列声明中含(D)关键字的函数属于简单成员函数。A、constB、volatileC、staticD、virtual题 63静态成员为该类的所有(B)。A、成员B、对象C、this 指针D、友元题 64友元函数与一般函数不同的是:它在类中说明,并可访问该类的(A)。A、私有成员B、动态成员C、this 指针D、基类成员题 65print()函数是一个类的常量成员函数,它无返回值,以下正确的是(A)。A、void print()constB、const void print()C、void print const()D、void print(const)题 66下列各类函数中,(C)不是类的成员函数。A、构造函数B、析构函数C、友元函数D、复制初始化构造函数题 67#includeclass basepublic:base(int i)val=i;int val;int double-val()return val+val;void main()int base:*data;int(base:*fun)();base a(2),b(4);data=&base:val;fun=&base:double-val;cout”value:”;couta.*data”“;coutb.*dataendl;cout”double:”;cout(a.*fun)()”“;cout(b.*fun)()endl;【解答】value:2 4 double:4 8题 68 下列说法正确的是(C)A、使用 new 建立动态对象的语法和建立动态变量的情况完全不同B、new 和构造函数不能一同使用C、使用 new 建立一个动态对象时,自动调用构造函数D、使用 new 建立的动态对象在不用时必须调用析构函数删除题 69下列说法错误的是(B)A、在说明一个对象数组时,要求有一个默认构造函数B、当说明一个对象数组时,程序为整个数组对象,调用一次默认构造函数C、可用初始化列表给没定义构造函数的类的对象进行初始化D、当一个类没定义默认构造函数时,在说明对象数组时必须提供初始值题 70templatevoid order(T&x,T&y,T&z)T a;if(xy)a=x;x=y;y=a;if(yz)a=y;y=z;z=a;if(xy)a=x;x=y;y=a;#includevoid main()int a=35,b=21;c=94;double x=24.5,y=27.5,z=21.5;order(a,b,c);couta”“b”“cendl;order(x,y,z);coutx”“y”“zendl;【解答】21 35 94 21.5 24.5 27.5题 71关于成员函数特征,下列描述中哪项是错误的(A)A、成员函数一定是内联函数B、成员函数可以重载C、成员函数可以设置参数的默认值D、成员函数可以是静态的题 72一个类的友元函数不能访问该类所有对象的(D)A、公有成员B、私有成员C、保护成员D、父类成员题 73#includetemplateT max(T x,T y)return(xy)?(x):(y);void main()int x=3,y=5;double a=2.3,b=3.5;coutmax(x,y)endl;coutmax(a,b)endl;【解答】5 3.5题 74在没有为类定义任何构造函数时,C+编译器会自动建立一个(A)的构造函数。A、不带参数B、带一个参数C、带多个参数D、默认参数题 75在用书该类的一个对象初始化该类的另一个对象时,(B)被调用。A、默认构造函数B、复制初始化构造函数C、复制函数D、默认析构函数题 76把对它所在类的对象的引用作为参数,我们称这样的构造函数为(A)构造函数。A、复制初始化B、默认参数C、赋值D、默认题 77构造函数的作用是(A)A、初始化对象B、复制对象C、对象赋值D、回收对象题 78下列叙述不正确的是(C)A、基类的保护成员在派生类中任然是保护的B、基类的保护成员在公有派生类中任然是保护的C、基类的保护成员在私有派生类中任然是保护的D、不可访问成员总是由基类继承来题 79若若派生类还包括对象成员,下列说法错误的是(B)A、对对象成员的构造函数的调用仍在初始化列表中进行B、构造函数执行顺序是:先调用子类的构造函数,再调用对象成员的构造函数,最后执行基类道德构造函数C、构造函数执行顺序是:先调用基类的构造函数,再调用对象成员的构造函数,最后执行派生类道德构造函数D、多个对象成员的调用顺序取决于它们在派生类中被说明的顺序题 80下列说法错误的是:(B)A、一个派生类可以公有或私有的继承一个或多个虚基类B、说明虚基类时,关键字 virtual、public、private 的相对位置是确定的C、关键字 virtual 只对跟随其后的基类名起作用D、支配规则同样可用于分析有虚基类情况下的二义性问题

    注意事项

    本文(面向对象程序设计应试指导(本科).rtf)为本站会员(qwe****56)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开