面向对象程序设计
免费题库
仔细阅读下面的程序,找出类定义中的错误及其理由,并以尽量少的改动写出test的定义,使其能够正确编译运行并给出运行结果。#includeclasstest{intm;intGet{returnm;}public:statictest(inti){m=i;}voidSet(inti){m=i;}voidShow{cout
下面是一个计算器类的定义,请完成该类的实现。classcounter{intvalue;public:counter(intnumber);voidincrement;//给原值加1voiddecrement;//给原值减1intgetvalue;//取得计数器值voidprint;//显示计数器值}
下面是以传统形式的struct来定义一存放字符的栈类型,并定义了有关栈操作的各种函数。编写一主函数,定义并输入一个字符串,用此串来验证栈的各种操作,包括把串压入栈中后再弹出,以相反的次序将它们显示出来。#include″iostream.h″constmax—len=1000;enunboolean{—false,—true};enum{EMPTY=-1,FULL=max—len-1};structstack{chars[max—len];inttop;};voidreset(stack*st){st->top=EMPTY;}voidpust(charc,stack*st){st->top++;st->s[st->top]=c;}charpop(stack*st){return(st->s[st->top--]);}chartop(stack*st){return(st->s[st->top]);}booleanempty(conststack*st){return(boolean)(st->top==EMPTY);}booleanfull(conststack*st){return(boolean)(st->top==FULL);}
根据下面的主程序基输出结果,补上所缺类文件。#include#include″base.h″voidmain{basex;x.init(6.5,3.8);x.show;}输出结果:2.7
给出类:classthree—d{intx,y,z;public:three—d(inti,intj,intk){x=i,y=j,z=k;}three—d{x=0;y=0;z=0;}voidget(inti,intj,intk){i=x;j=y;k=z;}};针对给出的类,重载“+”运算符,以便使“+”运算符可以接受下面的运算类型:ob+int;imt+ob;其中ob为three—d类对象。
在下面程序中的横线处填上适当内容,使程序完整。#includeclassvehicle{protected:intsize;intspeed;public:voidsetSpeed(ints){speed=s;}①___getSpeedLevel{returnspeed/10;}};classcar:pubicvehicle{public:intgetSpeedLeve{returnspeed/5;}};classtruck:publicvehicle{public:intgetSpeedLevel{returnspeed/15;}};intmaxSpeedLevel(vehicle②___,vehicle③___){if(v1.getSpeedLevel>v2.getSpeedLevel)return1;elsereturn2;}voidmain{truckt;carc;t.setSpeed;c.setSpeed;cout
分析下列程序段,写出运行结果。#includeclassA{private:inta;public:voidsetA(int);voidsetA;};classB{private:intb;public:voidsetB(int);voidshowB;};classC:publicA,privateB{private:intc;public:voidsetC(int,int);voidshowC;};voidA::setA(intx){a=x;}voidA::showA{cout
分析下列程序段,写出运行结果。#includeclassbasel{public:base1{cout
分析下面程序的设计思想及输出结果:classnumber{private:intval;public:number(inti){val=i;}operatorint;};number::operatorint{retumval;}#include#include″number.h″classnum:publicnumber{public:num(inti):number(i){}};voidmain{numn;inti=n;cout
写出下面程序的输出结果。#includeclassFunArray{int*pa;//指向一个数组空间intsize;//数组元素个数public:FunArray(inta[],intthesize):pa(a),size(thesize){}intSize{returnsize;}intoperator[](intindex){returnpa[index-1];}};voidmain{ints[]={3,7,2,1,5,4};FunArrayma(s,sizeof(s)/sizeof(int));ma[3]=9;for(inti=1;i
«
1
2
3
4
»