欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    C++习题与答案.docx

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

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

    C++习题与答案.docx

    一、选择:1、关于对象概念的描述中,()是错误的。A.对象就是C语言中的结构变量:B.对象代表若正在创建的类的一个实体:C.对象是个属性和操作(或方法)的封装体;D.对象之间的信息传递是通过消息进行的:2、卜列给字符数组进行初始化中,O是正确的。A. chars1.=",12345abcd:B.chars23=*xyz*:C.chars33三,a,x,y,;D.chars423=*xyz*,*mnp*!:3、对于int*pa5;的描述,()是正确的。MPa是一个指向数组的指针,所指向的数组是5个int型元素:B. Pa是一个指向某个数组中第5个元素的指针,该元素是ini型变量:C. pa5表示某个数组的第5个元素的值:D. Pa是一个具有5个元素的指针数组,每个元素是一个int型指针:4、在intb3=1.,3,2),(4,5,6,0"b22的值是()«A.0:B.2:C.5:D.65、下列的各类函数中,()不是类的成员函数。A.构造函数;B.析构函数;C.友元函数;D.拷贝初始化构造函数;6、下述静态数据成员的特征中,)是错误的。A.说明静态数据成员时前边要加修饰符static;B.静态数据成员要在类体外进行初始化:C.引用静态数据成员时,要在静态数据成员名前加K类名和作用域运算符;D.铮态数据成员不是所有对象所共用的。7、()是析构函数的特征。A.一个类中只能定义一个析构函数;B.析构函数与类名不同;C.析构函数的定义只能在类体内;D.析构函数可以有各个或多个参数。;8、已知:P是一个指向类A数据成员m的指针,A1.是类A的一个对象.如果要给In赋值为5,()是正确的。B.1.->p=5;D.*A1.p=5;A.1.p=5;C.1.*p=5;9、关于new运算符的下列描述中,()是错的。A.它可以用来动态创建对象和对象数组:B.使用它创建的对象或对象数组可以使用运兑符de1.ete删除:C.使用它创建对象时要调用构造函数:D.使用它创建对彖数组时必须指定初始值。10、派生类的对象对它的基类成员中()是可以访问的.A.公有继承的公有成员;B.公有继承的私仃成员:C.公有继承的保护成员:D.私有继承的公有成员。二、填空题1、,入正整数num,按从小到大的次序输出所有的因子.inc1.ude<iOStream.h>WefineN40voidmain()(intnum,t,i,j.k,aN;cout<<”请输入一个正整数:n”;cin>>num;i=2:k=N-I;a0=1.J=0;aN-1.=numt=num:whi1.e(i<t)(if)t=num,i;a+j=i:if(i<t).;)for(i=0:i<=j;i+)cout<<ai<<,t':for(i-k;i<N;i+)cout<<ai<<,t':cout<<,n')2、用1、2、3、4四个数组成四位数,箱出所有可能组成的四位数,并统计四位数的个数ftinc1.udo<iostream,h>voidmin()inta,b,c1d,sum=0,x:for(a=1.;)for(b-1.;)for(c=1.;)for(d=1.:;)x=u*+b*+c*10+d;cout<<,*"«x:SUm=+1;CoU1.<<"Xnsuin="<<sum;3、函数coress能为首指针为head的有序管表进行压缩(值域相等的结点只保留一个),并将等值结点的个数存放在COunt中.结点定义如下:typedefstructnodeintdata,count;node2*next:snode,*ptr;voidcompress(,)(ptrp1.,p2:p1.=head;whi1.eC):if(p1->data=p2-><1.ata)p1.->count+;p1->next=.:de1.etep2:e1.se();)4、#inc1.ude<iostrean.h>c1.asstest!private:intnum;f1.oatf1.;pub1.ic:testO;test(,):inige1.iniO(returnnum;f1.oatgetf1.oat()returnf1.;;test.:test()CoUt<<”默认初始化"<<end1.;.=0:=0.0:test.:test(n.f)COU初始化"<<end1.;=11:=f:voidnain()testa;testb(2,5.5);三、读程序题,1、Pinc1.ude<iostrcam.h>intfunc(int,int):voidmin()(externintx,y;cout<<func(x,y)<<ond1.:结果intx=15,y=-5:intfunc(inta,intb)(ints;s=a+b+x+y;returns:2.#inc1.ude<iostream.h>intadd(intx=15,inty=10)结果:returnx+y:)voidmain()(inta=8:cou1.<<add()<<,t,;cout<<add(八)<<,t'cout<<add(a,add(八))<<,t'cout<<add(a,add(a,add()«'n,:3、Uinc1.ude<iostream,h>voidmain()(inta8=(10,20,30,40,50,60,70,80;结果:int*pi:pi=a0':pi+;cout<<*pi=",<<*pi<<<n'pi=at;cout<<*pi+=*<<*pi+«'n>Pi=M0:;cout<<*(pi+)=*«(pi+)<<,n,;pi=a0;CoUt<<"*+pi="<<*+pi<<'n,:pi=Aa0'cout<<*(*pi)+=*«(*pi)+<<,n>:pi=fta0j;cout<<*+*pi=*<<+*pi<<,n:)4、Uinc1.ude<iostream,h>intnumber1;intfcset1.()returnnumber1;结果:intfcset2()staticintnumber2;returnnumber2;intAmax(int&m,ini&n)return(m>n?m:n):!voidmain()set1()=5;cout<<set1.()<<,t,<<number1.<<,n'number1=7;cout<<set1.()<<,t,<<number1.<<,n,;set2()=6;inta=set2();cout<<a<<'n'intb=3,c=4;cout<<max(b,c)<<,n,;11ux(b,c)=2;cout<<b=*<<b<<,tc=*<<c<<*tmax(b,c)=*<<max(b,c)<<,11,:max(b,c)=10;cout<<*b=*<<b<<*tc=*<<c<<*tmax(b,c)=*<<max(b,c)<<,n,;5、#inc1.ude<iostream,h>c1.assAprivate:inti;pub1.ic:A(inta)(i=a;cout<<"i=Y<i<<'Y<”调用了构造函数八n”;、A()(CoUt<<"i="<<i<'调用了析构函数;;Aa(O);结果一voidmain()(Aa1.(10):Aa2=20:a2=50:COUt<<"main()函数结束!"<<end1.;6、Uinc1.udeQostream.h>c1.assA(intx;staticinty;pub1.ic:A(intx1.,intx2)x=x1;y=y+x2;)staticvoidshow1.O:staticvoidshow2(Aa):HvoidA:show1.()cout<<*Y=,<<y<<end1.;voidA:show2(Aa)cout<<X*<<a.x<<*t*<<*Y*<<y<<end1.;intA:y=6;结果:voidmain()Aa1.(1.1.,22):a1.show1.():show2(a1.);Aa2(33,44):A:show1.();a2.show2(a2);)7、inc1.ude<Iostrean.h>c1.assAApub1.ic:(inti,intj)A=i;B=j:cout«”Constrctorn*;)AA(AA&obj)Aobj.A+1.:B=obj.B÷2:cout<<*CopyConstructorn*;'()cout<<*Des1.ruc1.orn*;)voidprint()cout<<*A=*<<A<<*,B=*<<B<<end1.:)private:int,B;结果;);voidmain()AAa1.(2,3):AAa2(a1.):a2.print();*pa=newAA(5,6);pa->printO;de1.etepa;8、#inc1.ude<iostream,h>c1.assCBase(pub1.ic:virtua1.voidf1.()cout<<"调用函数CBase*tf1.O!*<<end1.;)virtua1.void2()cout<<"调用函数CBase:f2()!"«end1.;voidf3()coui<<"调用函数CBaSe:f3O!"«end1.;):c1.assCDerivedipub1.icCBasevoidf1.Ocout<<"调用函数CDeriVed:f1O!"<<end1.;)void3()cout<<"调用函数CDeriVed:用0!*<<end1.;):voidmnin()(CBaseobj1.,*P;CDerivedobj2:结果f*4obj1;P->f1.();P->f20:P->f30:P=obj2:P->f1.();P->f20:I,->f3();四、编程JR1、定义一个学生的类:数据成员包括:姓名、学号、英语、数学、计算机三门成绩。成员函数包括:设置姓名、学号和三门课的成绩、输出数据、以及求平均成绩。2、编写一个函数,将参数P中元素做例次序。函数原型:f1.oat<irror(f1.oatp.intn);其中:*mirror:返回类型为指针的函数f1.oat*p:为指针数组一、填空题1、在字长为32位的机器中,sizof(char)=字节,SiZeof(UnSignedint)=_1字节.2、C+语法规定,任何变员在使用前必须先dingyi:变量有两个值,个是变量本身的值,另一个是变母的dizhizhi。3、C+中任何一个数组的名字是个ChangIiang指针,该指针的值是该数组ShoUyuHnShU的地址。4、函数调用时的参数传递主要分为单向传递和ShUangXiang传递,前者的特点是bugaibu5、函数IR载时要求同名函数的参数或不同,否则无法确定是哪个函数。6、静态数据成员是类的所仃对象中gont¾xiang的成员,静态数据成员初始化与般数据成员初始化bu1.on*二、判断题I、在说明语句inta(15),Ab=a,*p=M;中,b的值的*P的是相等的.()2、在不同类型操作数组成的表达式中,其表达式的类型一定是最高类型doub1.e型。()3、break语句也可以用于if体内,它可退出if语句。()4、在一个被调用函数中,一个return语句可返回多个值给调用函数.<)5、在传值调用中,要求实参和形参的类里完全一致并且个数相等。()6、for循环中,循环变量的作用域是该循环的循环体内.()7、类中所提供的成员函数可以直接访问私有成员。()8、私有继承中,基类中所有成员对派生类的对领都是不可见的。()三、读程序题,写出运行结果1、Jrinc1.udoCiostream.h>voidIiuiinOinta,b,c,d=5;c=2,c+=10;结果:a=b=10;a*=2:b/=2:c%=2:CoUI<<a<<","<<b<<",”<<c<<end1.;)2、Jrinc1.udo<iostream.h>voidmainOinta=50,b=0:结果:b-+a;cou1.<<a<<,<<b<<end1.;b三a+;cou1.<<a<<w,*<<b<<e11d1.:)3、inc1.ude<iostrefun.h>voidmainOintf=2002,x;if(f!=3)结果:x=2003;e1.sex=20:cout<<f<<*,*<<x<<end1.;)4、inc1.ude<iostream.h>voiduin()(inti=1.,sum=0:结果:whi1.e(i<=1.)sura+=+i;cout«*sum-<<sum«",i="«i<<end1.;5、inc1.ude<iostrean.h>voidmain()inti;for(i=4;i<=10;i+)(if(i%3=0)continue;结果:cout<<i;6、inc1.ude<iostrcam.h>voidmain()charf1.ag='c,;switch(f1.ag)case,<,zcou1.<<*1.*,<<end1.;case'b,:COUt<<"2"<<end1.;break;结果:case'c,:cout<<*3*,<<end1.:defau1.t:cout<<*4<<end1.:break:7、Jtinc1.ude<iostream.h>voidmain()(staticintb3=1,2,3,4,5,6;b02=12,b1.2=18;cout«*b<<*t*<<*(b+I)<<*t*<<*b+1.<<*t*«(b+1.)+2)<<*n*;cout«b02+b1.2+b22«ond1.:结果:)8、inc1.ude<iostream.h>voidSwap(int&a,int&b);voidmainO(intx=10,y=7;cout<<*x=*<<x<<y=><<y<<end1.;Swap(x,y);CoUt<<"x="<<x<<"y="<<y<<end1.;结果:)voidSwap(int&a,int&b)inttemp;temp=a;a=b;b=te三p;9、*inc1.ude<iostream.h>intadd(inta,intb):voidmain()(externintx,y:cout<<add(x,y)<<end1:x=y:cout<<add(x,y)<<end1;结果:)intx=50,y=100:intadd(inta,intb)(ints=a+b;returns;)10、0inc1.ude<iostream.h>c1.assA(pub1.ic:AO:A(inti,intj);A()cou1.<<"Dons1.ruc1.or.n”;)voidprintO;private:inta,b:)::A()a=b=10:cout«*Defau1.tconstructor.n*;结果:A:A(inti,intj)a=i,b=j:cout<<*Construetor.n*;voidA:print()(cout<<*a=*<<a<<*,b=*<<b<<end1.;voidmain()(11,n(15,18):in.printO;n.print();四、编程题从键盘上输入数组si23的各元素,并将数组S1.转置后存入数组s2中,圾后输出数组S1.和数组s2的各元素。一、选择题s1234S678910AADDCDACDA二、填空Je1、输入正整数num,按从小到的次序输出所仃的因子。if(mai=0)i(i<1.)a=t;iH;2、用I、2、3、4四个数组成四位数,辘出所有可能组成的四位数,并统计四位数的个数。for(a-1.;a<4;a÷÷)for(b=1.:b<4;b+_)for(c=1.:c<4;c÷÷)for(d=1;d<4;d÷÷)(x=a*1000-b*100c*10d:sum-sI:)3、函数compress能为首指针为head的有序链表进行压缩(值域相等的结点只留下一个),并将等值结点的个数存放在c。Un1.中。voidcompress(ptrhead)(Whi1.e(p1.->net!(p2=p1.->next;P1.->nexi-p2->next;c1sc(p1.=p1.->next):)4、test(int,f1.oat);test.:test()mao.f1.=O.O;test.test(intn.f1.oatf)COUt«”初始化*<<end1.;runn;fpf;三、读程序题1 .结果:202 .结果:251826413 .结果:pi=20*pi+=10*(pi+)=10*+pi=20(*pi)+=10+*pi=124、结果:557764b=3c=2max(b,c)=3b=10c=2max(b,c)=105、结果:i-o调用r构造函数i=10调用了构造函数i=20调用了构造函数i=50调用了构造函数i=50调用了析构函数mai11()函数结束i=20调用了析构函数i-10调用/析构函数i=0调用了析构函数6、结果:Y=28X=HY=28Y=72X=33Y=727、结果:ConstructorCopy.ConstructorA=3B=5ConstructorA=5,B=6Dcs1.ructorDeSUUC1.orDcsWuctor8、结果:调用函数CBaSe:f1.O!调用函数CBaSe:f20!调用函数CBaSe:f30!调用函数CDeriVed:f1.()!调用函数CBase:f20!调用函数CBase:f30!一、填空题(3)定义(1)(4)地址值(5)常量(6)首元素(7)双向(8)形参的改变不影响实参(9)个数(10)类型(11)共享(12)不同二、判断题1、J2、X3、X4、×5、X6、X7、J8、J三、写出程序的运行结果1.结果:20.5.02、结果:51.5152.513、结果:2002,20034、结果:sum=65.i=1.1.5、结果:4578106、结果:347,结果:I42188、结果:x=IO.y=730x=7,y=010、结果::Defau1.tconstructorConstructor9,结果:150a=IO.b=IO10()a=15.b=1.8DestructorDestrucior四、编程题#inc1.udc<iostrcam.h>voidmain()ints1.|2H3|.s2pH2|.i.j;1.orti=0;i<2;i+)fot(j=0;j<3;j+)cout<<s1."<<i<<'<<j<<"=;cin>>s1.i)j;s2U(i=s1.(iJUJ;)cout<<-A11ays1.:"«cnd1.;for(i=0;i<2;i+)for(j=0:j<3:j+)cout<<sHiJ(j<<*t*'com<<cnd1.;Icou1.<<,'A11uys2:',«end1.:1.brti=O;i<3;i+)(for(j=*>U<2j÷÷)cou1.«s2(i)(j)«MtM;cout<<cnd1.:

    注意事项

    本文(C++习题与答案.docx)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开