还剩23页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
程序设计试题C++
一、单项选择题.对语言和语言的兼容性,描述对欧日勺是1C++C JA兼容部分兼容A.C++C B.C++C不兼容兼容C.C++C D.C C++在中使用流进行输入输出,其中用于屏幕输出的对象是
2.C++C A.cerr B.cin C.cout D.cfile原则错误输出;原则输入cerr:cin:对使用关键字所开辟的动态存储空间,释放时必须使用
3.newC A.free B.create C.delete D.release如没有使用关键字定义类的数据组员,则默认为
4.privateA A.Private B.public C.protected D.friend使用值传递方式将实参传给形参,下列说法对时的是
5.A形参是实参的备份实参是形参的备份A.B.I形参和实参是同一对象形参和实参无联络C.D.在函数调用时,如某一默认参数要指明一种特定值,则有
6.class point{private:float x;public:void ffloata{x=a;}void f{x=0;}friend float maxpoint a,point b;;floatmaxpoint a,point b{returna.xb.x a.x:b.x;}void main{point a,b;a.f
2.2;b.f
3.3;cout«a.maxa,b;不是类的组员函数,不能用}cout«a.maxa,b;max1a.max方式调用
45.#includeiostream.htemplateclass Tclassf{private:T x,y;publicvoid flTa,T b{x=a;y=b;}T max{retumxyx:y;}};void main{fa;a.fl
1.5,
3.8;cout«a.x«a.y«a.max«endl;是私有类型,不能在主函数}cout«a.x«a.y«a.max«endl;x,y中直接使用
四、完毕程序题本大题共小题,每题分,共分5420完毕下面类中的组员函数的定义
46.class pointprivate:int m,n;public:pointint,int;pointpoint;;point::pointint a,int bm=a;n=b;point::pointpointt m=t.m;n=t.n;下面是一种输入半径,输出其面积和周长的程序,在下划
47.C++线处填上对时时语句#includeiostreamusing namespace std;const doublepi=
3.14159;void maindoubler;cout«,f r=;cin»r;double l=
2.O*pi*r;double s=pi*r*r;cout«z,\n Thelong is:«l«endl;cout«7The areais:«s«endl;}在下划线处填上缺乏的部分
48.I#includeiostream#includefstreamusing namespace std;class complexpublic:int real;int imag;complexint r=0,int j=0real=r;imag=i;;complex operator+complexa,complex bintr=a.real+b.real;int i=a.imag+b.imag;return complexrj;void maincomplexxl,2,y3,4,z;z=x+y;cout«z.real«z,+«z.imag«i«endl;程序时输出成果如下
49.1,950,30请根据输出数据在下面程序中的下划线处填写对的的语句源程序如下#includeiostreamusing namespacestd;class baseprivate:int m;public:base{};baseint a:ma{}int get{return m;}void setinta{m=a;}};void mainbase*ptr=new base
[2];ptr-set30;ptr=ptr+1;;ptr-set50;base a
[2]={l,9};cout«a
[0].get««a[l].get«endl;cout«ptr-get«7j“;ptr=ptr-l;cout«ptr-get«endl;delete]]ptr;在下面横线处填上求两个浮点数之差日勺函数的原型申明、
50.cha调用措施#include iostreamusingnamespacestd;void mainfloata,b;//函数的原型申明float chafloat,float;cha Ia=
12.5;b=
6.5;;//调用函数float c=chaa,b chacout«c«endl;float chafloat x,float yfloatw;w=x-y;return w;}
五、程序分析题本大题共小题,每题分,共分4520给出下面程序日勺输出成果
51.#include iostream.htemplate classTclass Sample{T n;public:SampleT i{n=i;}int operator==Sample;};template classTint SampleT::operator==Samples{ifn==s.n return1;else return0;}void main{Sampleintsl2,s23;.coutvv〃si与s2日勺数据组员〃«sl==s2〃相等〃不相等endl;Sampledoubles
32.5,s
42.5;与的数据组员〃〃相等〃〃不相cout«S3s4«s3==s4等endl;与的数据组员不相等}S1S2与数据组员相等S3S4给出下面程序的输出成果
52.I#includeiostreamusing namespacestd;templateclass TT maxT ml,Tm2{returnmlm2ml:m2:}void main{cout«maxl,7«\t«max
2.0,
5.0«endl;cout«maxy,b«t«maxAa«endl;75y a给出下面程序时输出成果
53.#include iostreamusingnamespacestd;class A{public:int x;A{}Aint a{x=a;}int getinta{return x+a;}};void main{Aa8;intA::*pint;p=A::get;cout«a.*p5«endl;A*pi=a;cout«pi-*P7«endl;}1315给出下面程序日勺输出成果
54.includeiostream#includestringusing namespacestd;class Book{char*title;char*author;A其之前所有参数都必须赋值其之后所有参数都必须赋A.B.值其前、后所有参数都必须赋值其前、后所有参数都不必C.D.赋值设存在函数返回两参数中较大值,若求
7.int maxfint,int22,59,70三者中最大值,下列体现式不对时日勺是C A.int m=max22,max59,70;B.int m=maxmax22,59,70;C.int m=max22,59,70;D.int m=max59,max22,70;下列哪个类型函数不适合申明为内联函数
8.A函数体语句较多函数体语句较少A.B.函数执行时间较短函数执行时间过长C.D.
9.int Funcint,int;不可与下列哪个函数构成重载B A.int Funcint,int,int;B.double Funcint,int;C.double Funcdouble,double;D.double Funcint,double;阐明不能以形参名来辨别函数;不能以函数返回值来辨别函数必须是形参的个数或者类型不一样才能构成函数重载对类中申明日勺变量,下列描述中对时日勺是
10.C属于全局变量只属于该类A.B.属于该类,某些状况下也可被该类不一样实例所共享C.int numsold;public:Book{}Bookconst char*strl,const char*str2,const intnum{int len=strlenstrl;title=new char[len+l];strcpytitle,strl;Ien=strlenstr2;author=new char[len+l];strcpyauthor,str2;numsold=num;}void setbookconst char*strl,constchar*str2,const intnumint len=strlenstrl;title=new char[len+l];strcpytitle,strl;Ien=strlenstr2;author=new char[len+l];strcpyauthor,str2;numsold=num;}〜Book{delete title;delete author;}void printostreamoutput{output«z,书名«title«endl;output««author«endl;output«z,月销售量«numsold«endl;.;void main{Bookobjlf数据构造〃,〃严蔚敏〃,200,obj2;objl.printcout;obj
2.setbook〃C++语言程序设计〃,〃李春葆〃,210;obj
2.printcout;月销售量200书名:程序设计C++李春葆月销售量210
六、程序设计题本大题共小题,共分110在三角形类实现两个函数,功能是输入三个顶点坐标判
55.TRI断与否构成三角形#includeiostream.h#includemath.hclass point{private:float x,y;public:pointfloat a,float b{x=a;y=b;}pointf{x=0;y=0;},void setfloata,float b{x=a;y=b;}float getx{return x;}float gety{return y;};class tri{point x,y,z;float si,s2,s3;public;...settri....;//用于输入三个顶点坐标;//用于判断与否构成三角形....test....};请写出两个函数的过程假如需要形式参数,请给出形参类型和数量,以及返回值类型判断三条边能构成三角形的条件任意两边之和不小于第三边或任意两边之差不不小于第边3void tri::settrifloat xl,float yljloatx2,float y2,float x3,float y3{x.setxl,yl;y.setx2,y2;z.setx3,y3;}void tri::test{sl=sqrtx.getx-y.getx*x.getx-y.getx+x.gety-y.gety*x.gety-y.gety;s2=sqrtx.getx-z.getx*x.getx-z.getx+x.gety-z.gety*x.gety-z.gety;s3=sqrty.getx-z.getx*y.getx-z.getx+y.gety-z.gety*y.gety-z.gety;ifsl+s2s3sl+s3s2s2+s3sl11abssl-s2s3abssl-s3s2abss3-s2〈“三个顶点能构成三角形”;couk“三个顶点坐标不能构成三角形”;else cout«void tri::settrifloat xl,float yl,float x2,float y2,floatx3,float y3{x.setxl,yl;y.setx2,y2;z.setx3,y3;}23任何状况下都可被该类所有实例共享D.类的私有组员可在何处访问()
11.D通过子类的对象访问本类及子类日勺组员函数中A.B.通过该类对象访问本类日勺组员函数中C.D..假如没有为一种类定义任何构造函数的状况下,下列描述对的12日勺是()A编译器总是自动创立一种不带参数的构造函数A.这个类没有构造函数B.这个类不需要构造函数C.该类不能通过编译D.一种类可包括析构函数的个数是()
13.B个个至少一种个或多种A.0B.1C.D.0只有一种,多了编译器都不懂得调用哪个好而构造函数可以有多种,由于构造函数调用时编译器可以根据变量的类型和数量来确定调用哪个构造函数,而析构函数是系统调用不能做到这种0U效果指针存在的目的是()
14.this IB保证基类公有组员在子类中可以被访问A.保证每个对象拥有自己的数据组员,但共享处理这些数据组员B.的代码I保证基类保护组员在子类中可以被访问C.保证基类私有组员在子类中可以被访问D.下列有关类的权限时描述错误时是()
15.A类自身的组员函数只能访问自身日勺私有组员A.类的对象只能访问该类的公有组员B.一般函数不能直接访问类的公有组员,必须通过对象访问C.一种类可以将另一种类的对象作为组员D.在编译指令中,宏定义使用哪个指令()
16.BA.#include B.#define C.#if D.#else设类将其他类对象作为组员,则建立类对象时,下列描述
17.A A对时时是()B类构造函数先执行组员构造函数先执行A.A B.两者并行执行不能确定C.D.类的组合,描述的是一种类内嵌其他类的对象作为组员的状况,I它们之间的关系是一种包括与被包括的关系在申明一种组合类的对象时,不仅它自身的构造函数将被调用,并且还将调用其内嵌对象的构造函数这时构造函数的调用次序是⑴按照内嵌对象在组合类的申明中出现的次序,依次调用内嵌对象的构造函数;⑵执行本类构造函数日勺函数体,析构函数的调用执行次序与构造函数刚好相反下列描述错误时是()
18.A在创立对象前,静态组员不存在静态组员是类的组员A.B.静态组员不能是虚函数静态组员函数不能直接访C.D.问非静态组员阐明静态组员函数可以直接访问该类的静态数据和函数组员,而访问非静态组员,必须通过参数传递方式得到对象名,然后通过对象名来访问对于友元描述对时日勺是()
19.B友元是本类的组员函数友元不是本类的组员函数A.B.友元不是函数友元不能访问本类私有组员C.D.在哪种派生方式中,派生类可以访问基类中的组
20.protected员()B和和A.public privateB.public protected和仅C.protected privateD.protected
二、填空题(本大题共小题,每题分,共分)20120请在每题的空格中填上对的答案错填、不填均无分设要把一种文献输出流对象与文献有关
21.myFile f:\myText.txt联,所用的语句是C++()myFile.open f:\\myText.txt;中类的直接基类是类
22.C++ostream ios运算符[]只能用组员—运算符来重载,不能用友
23.元运算符来重载定义虚函数所用的关键字是
24.virtual类中用于返回向量中第个对象欧措施是
25.vector1I front在中,运用向量类模板定义一种具有个日勺向量
26.C++20char E,其元素均被置为字符实现此操作t,的语句是vectorcharE20t/类的继承是指子类继承基类日勺—数据组员和组员函
27.数不一样对象可以调用相似名称的函数,但可导致完全不一样的
28.行为的现象称为多态性或类时多态性O指令指示编译器将一种源文献嵌入到带该
29.—include指令的源文献之中设类有组员函数
30.Avoid Funvoid;若要定义一种指向类组员函数的指针变量来指向该指针pafn Fun,变量的申明语句是:I voidA::*pafnvoid;设在程序中使用如下语句申请了一种对象数组
31.Point*ptr=new Point
[2];则在需要释放指向的动态数组对象时,所使用的语句是
32.ptr_delete[]ptr;在保护派生中,基类权限为的组员在派生类中—Private不可访问O类有如下组员函数
33.Aint A::fundouble x{return int x/2;}int A::funint x{return x*2;}设a为类A的J对象,在主函数中有ints=a.fun
6.0+a.fun⑵,则执行该语句后,的值为s7—o对象传送的消息一般由部分构成接受对象名、调用操作名
34.3和—必要日勺参数—0将指向对象的指针作为函数参数,形参是对象指针,实参是
35.对象日勺地址值0在使用类的组员函数来检索主串中与否具有指定日
36.string find勺子串时,若在主串中不含指定的子串,函数日勺返回值是find-1O在中,申明布尔类型变量所用的关键字是
37.C++bool
38.执行下列代码inta=29,b=100;cout«setw3«a«b«endl;程序日勺输出成果是:前面有个空格29100_2o执行下列代码
39.cout«ff Hex:«hex«255;程序日勺输出成果为Hex:ffo语言中可以实现输出一种换行符并刷新流功能的操控符
40.C++是endlo
三、改错题本大题共小题,每题分,共分5210下面的类定义中有一处错误,请用下横线标出错误所在行并给出修改意见
41.#includeiostream.hvoid main{int x=5,y=6;const int*p=x;*P=y;cout«*p«endl;指针所指向的为一常量,不能进行左值操作}*p=y;P
42.#includeiostream.hclass f{private:int x,y;public:fl{x=0;y=0;}printf{cout«x««y«endl;};void main{fa;a.fll,l;a.print;调用时实参与形参数量不一致}a.fll,l;fl
43.#includeiostream.hclass f{private:int x=0,y=0;publicvoid flinta,int b{x=a;y=b;}void get{cout«x««y«endl;};void main{fa;a.fll,3;a.get;数据组员申明时不容许直接赋值}private:intx=0,y=0;
44.#includeiostream.h。
个人认证
优秀文档
获得点赞 0