长沙理工大学C题库附答案.docx
- 文档编号:7726402
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:9
- 大小:30.06KB
长沙理工大学C题库附答案.docx
《长沙理工大学C题库附答案.docx》由会员分享,可在线阅读,更多相关《长沙理工大学C题库附答案.docx(9页珍藏版)》请在冰豆网上搜索。
长沙理工大学C题库附答案
长沙理工大学C++题库附答案
一、指出函数或程序的功能。
1、template voidAC(Type&x,Type&y) { Typea=x; x=y;y=a;} 2、intAB(int*a,intn){ intx=a[0]; for(inti=1;i 3.intAB(int*a,intn){intx=a[0]; for(inti=1;i 4.floatfact(intn){floatt=1; for(inti=1;i #includevoidmain(){floatt; intn=10; cout } 写出程序运行结果 1、#include inta={2,4,6,8,10};int&index(inti){returna[i];} voidmain(){ inti; index(3)=12; for(i=0;i } 2、#includevoidf(int*m,intn){ inttemp; temp=*m; *m=n; n=temp;} voidmain(){ inta=5,b=10; f(&a,b); cout 3、#include inti=15;voidmain(){ inti; i=100; ∷i=i+1; cout 4、#include classtoy{ 1 public:
toy(intq,intp) { quan=q; price=p; } intget_quan() { returnquan; } intget_price() { returnprice; }private:
intquan,price;};main(){ toyop[3][2]={ toy(10,20),toy(30,48), toy(50,68),toy(70,80), toy(90,16),toy(11,120),}; inti; for(i=0;i cout quan() cout price() cout quan() cout price() } cout 5、#include classexample{ public:
example(intn) { i=n; cout n\ } ~example() { cout } intget_i() { returni; } private:
inti;}; intsqr_it(exampleo){ return_i()* _i(); } main(){ examplex(10); cout 6、#include classTest { private:
intx; public:
Test() { cout ~Test(){cout voidmain() { Testobj1,obj2;();(); } 7、#include 2 classA { public:
A(int*s){cout }; classB:
publicA { public:
B(char*s1,char*s2):
A(s1) { cout classC:
publicA { public:
C(char*s1,char*s2):
A(s1) { cout } }; classD:
publicB,C { public:
D(char*s1,char*s2,char*s3,char*s4):
B(s1,s2),C(s3,s4) { cout } }; voidmain() { Dd(“classA”,”classB”,”classC”,”classD”); } 8、#include classBase { public:
virtualvoiddisp(){cout classDerivel:
publicBase { public:
voiddisp(){cout }; classDerive2:
publicBase { public:
voiddisp(){cout voidmain() { Base*p; Baseb; Derive1d1; Derive2d2; p=&b; p->disp(); 3 p=&d1; p->disp(); p=&d2; p->disp(); } 9、#include classSample { private:
intx; staticinty; public:
Sample(inta); voidprint(); }; Sample:
:
Sample(inta) { x=a; y++; } voidSample:
:
print() { cout intSample:
:
y=25; voidmain() { Samples1(5); Samples2(10); (); (); } 10、#include classSample { private:
intx; public:
Sample(){} Sample(inta){x=a;} voiddisp(){cout Sampleoperator+(Sample&s1,Sample&s2){returnSample(+);} voidmain() { Sampleobj1(10); Sampleobj2(20); Sampleobj3; obj3=obj1+obj2; (); } 11、#include classTest { private:
4 intx; public:
Test() { cout voidprint() { cout voidmain() { Testobj1,obj2;();(); } 12、#include classA { protected:
intx; public:
A(intx) { A:
:
x=x; cout }; classB { private:
Aa1; public:
B(intx):
a1(x) { cout classC:
publicB { private:
Aa2; public:
C(intx):
B(x),a2(x) { cout classD:
publicC { public:
D(intx):
C(x) { cout voidmain() 5
a*=2; b/=2; c%=2; cout 28、#includevoidmain(){ charflag=‘c’; switch(flag){ case‘a’:
cout } 29、#includevoidmain(){ staticintb[3]={{1,2,3},{4},{5,6}}; b[0][2]=12,b[1][2]=18; cout voidmain(){ intx(10),y(7); cout cout voidSwap(int&a,int&b) {inttemp;temp=a;a=b;b=temp;} 31、#includeclassA{public:
A(); A(inti,intj); ~A(){cout {a=b=10;cout {a=i,b=j;cout } {cout voidmain() 30、#include { voidSwap(int&a,int&b); Am,n(15,18); 11 (); ();} 32、//program1_#includevoidmain(){ inta,b,sum;a=43;//b=37;sum=a+b; cout 33、#includeclassSample{intn; staticintsum;public:
Sample(intx){n=x;}voidadd(){sum+=n;}voiddisp(){ cout intSample:
:
sum=0;voidmain(){ Samplea
(2),b(3),c(5);();();();();();();} 34、#includeclassSample{intx;public:
Sample(){}; Sample(inta){x=a;} Sample(Sample&a){x=+++10;}voiddisp(){cout voidmain(){ Samples1
(2),s2(s1);();();} 35、#includeclassA{ public:
A(char*s){cout classB:
publicA{ public:
B(char*sl,char*s2):
A(sl){ cout classC:
publicA{ public:
C(char*sl,char*s2):
A(sl){ cout classD:
publicB,publicC{ public:
D(char*sl,char*s2,char*s3,char*s4):
B(sl,s2),C(sl,s3){ cout voidmain(){ Dd(\} 36、//program1_#includevoidmain(){ cout 37、#includevoidmain(){inti,n; n=0; for(i=1;i cout 12 38、#includeclassSample{ intn;public:
Sample(inti){n=i;} friendintadd(Sample&s1,Sample&s2);}; intadd(Sample&s1,Sample&s2){ return+;} voidmain(){ Samples1(10),s2(20);cout 39、#includeclassSample{ intx,y;public:
Sample(){x=y=0;} Sample(inta,intb){x=a;y=b;}~Sample(){ if(x==y) cout cout voiddisp(){ cout voidmain(){ Samples1(2,3);();} 六、分别指出下面的p各是什么。
1、int*p; 2、int*p[3];3、int(*p)[3]; 4、int*p();5、int**p; 七、指出下列程序的错误,并说明为什么:
1、#include classStudent{ intsno; intage; voidprintStu(); voidsetSno(intd);}; voidprintStu(){ cout cout voidsetSno(ints){ sno=s;} voidsetAge(inta){ age=a;} voidmain(){ Studentlin; (20021); (20); ();} 2、 #includeclassPoint{public:
13 intx,y;private:
Point(){x=1;y=2;}}; voidmain(){ Pointcpoint; =2;} 3、#include voidmain() {intx=0,y=5,z=3; while(z>0&&++x cout } 4、#include voidmain() { intx=10; int&y=x; cout cout cout 5、#include voidmain() {inti,n=0; for(i=2;i {if(i%3!
=0)continue; n++;}cout 6、#includeclassA{ int*a; public:
A(intx) { a=newint(x); cout } }; voidmain() { Ax(3),*p; p=newA(5); deletep; } 7、#include classbase { public:
virtualintfunc(){return0;}};classderived:
publicbase { public:
intfunc(){return100;} 14 }; voidmain(){ derivedd;base&b=d; cout 8、#include#definepi=; 二、简答题 1、类的公有成员和私有成员有何区别?
2、引入类的静态成员有何意义?
3、什么是多态性?
它能带来什么样的好处?
4、运算符重载能带来什么好处?
constfloatr=;voidmain(){ floats1,s2,c1,c2,r1;c1=pi*r*r;s1=2*pi*r;r=;c2=pi*r*r;s2=2*pi*r;cout 5、怎样理解类与对象的含义?
类与对象的关系是什么?
6、为什么要在基类中定义虚函数?
7、引入友元的目的是什么?
8、什么是运算符重载?
是否所有运算符都能进行重载?
9、析构函数有什么作用?
15
c(intpx=10) {x=px;} voidsetx(inta){x=a;} }; {cp(11);c*q;q=&p;intp:
:
c*cptr;int(c:
:
*fptr)();(8);cptr=&c:
:
x;fptr=c:
:
getx; cout*cptr*fptr)();} 5、下面程序是输出100内能被3整除且个位数是6的所有整数,请将程序补充完整#includevoidmain(){inti,j; for(i=0;_____;i++){j=i*10+6; if(_____) continue; _____;cout 6、程序输出结果为counstructingobject:
x=1请将程序补充完整#includeclassSample{intx;public:
Sample(inta){ 六、填空:
_____ cout voidfunc(intn){ _____} voidmain(){ func
(1);func(10);} 7、程序输出结果为:
A=2,B=7A=5,B=7 请把程序补充完整 #includeclassSample{ intA; staticintB;public:
Sample(inta){A=a,B+=a;}staticvoidfunc(Samples);}; voidSample:
:
func(Samples){ _____ } intSample:
:
B=0;voidmain(){ Samples1
(2),s2(5);_____ Sample:
:
func(s2);} 1.C++语言的头文件与源程序文件扩展名分别是和。
2.在C++程序中使用基本输入与输出流时需要包含的头文件名是。
21 3.在C++语言中,惟一的一个三目运算运算符是。
4.C++中当一个函数无返回值时,则函数的类型是。
5.一个类中可以有个构造函数,只能有个析构函数。
6.一般情况下,按照面向对象的要求,把类中的数据成员(属性)定义为权限,而把成员函数(方法)定义为权限. 7.在定义类的对象时,C++程序将自动调用该对象的函数初始化对象自身.在撤销类的对象时,C++程序将自动调用该对象的函数. 8.类继承中,缺省的继承方式是. 9.在C++语言中,用转义字符序列或操纵符表示输出一个换行符。
10.表达式a=a+l表示成增量表达式为。
11.当不需要函数返回任何值时,则应把该函数类型定义为。
12.用于输出表达式值的标准输出流对象是。
,用于从键盘上为变量输人值的标准输人流对象是。
13、变量分为全局和局部两种,。
变量没有赋初值时,其值是不确定的。
14、假定类AB中有一个公用属性的静态数据成员bb,在类外不通过对象名访问该成员bb的写法为。
15、类的成员分为____和____。
16、一个____和____的关系,正如基本数据类型与该类型的变量一样,如intx;。
17、对一个类中的数据成员的初始化可以通过构造函数中的____实现,也可以通过构造函数中的____实现。
18、类有两种用法:
一种是____,即生成类的对象;另一种是通过____,派生出新的类。
19、C++语言提供的____机制允许一个派生类继承多个基类,即使这些基类是相互无关的。
20、声明虚函数的方法是在基类中的成员函数原型前加上关键字____。
21、如果一个类中有一个或多个纯虚函数,则这个类称为____。
22、静态数据成员在定义或说明时,前面要加上关键字____。
23、如果成员函数不需要访问类的____成员,则可以把它声明为静态成员函数。
24、友元可以是____,也可以是____。
25、若需要把一个函数“voidfun();”定义为一个类A的友元函数,则应在类A的定义中加入一条语句:
____。
26、运算符函数中的关键字是____,它和____一起组成该运算符函数的函数名。
27、类中运算符重载一般采用两种形式:
____和____。
28、面向对象程序设计的3大机制为:
____、____和___。
2、类的访问权限有____、____和____三种。
22 29、构造函数是____被创建时自动执行,对象消失时自动执行的成员函数称为____。
30、如果类A继承了类B,则类A称为____,类B称为____。
31、如果一个特定的类型S当且仅当它提供了类型T的行为时,则称类型S是类型T的____。
32、在类定义中,将____置于虚函数的函数原型的末尾可以声明该函数为纯虚函数。
33、类的静态成员分为____和____。
34、友元函数的声明可以放在类的____部分,也可以放在类的____部分,它们是没有区别的。
35、如果说类B是类A的友元类,则类B的所有成员函数都是类A的____。
36、设a和b是两个整型变量,我们用a+b的形式求这两个变量的和;设c和d为浮点型变量,我们用c+d的形式求这两个变量的和。
显然运算符“+”具有不同的用途,这是____的例子。
37、对于双目运算符,若重载为类的成员函数,有_个参数;若重载为友元函数,则有_个参数。
38、当建立__________,程序自动调用该类的构造函数。
39、在C++中有二种参数传递方式:
_________和_________。
40、模板对处理数据的类型的要求不同可以分为两种类型:
_________和_________。
41、异常是通过_________、_________和_________来实现的。
42、虚函数实现了C++的_________机制,类实现了C++的_________机制。
43、面向对象程序设计的_________机制提供了重复利用程序资源的一种途径。
44、C++语言程序设计的三种基本结构是:
______、______、______。
45、为了避免嵌套的条件语句if-else的二义性,C++语言规定else与______配对使用。
46、定义函数时,在函数的类型前加上修饰词______,指明将该函数定义为内联函数。
47、有说明语句:
*p;则*p++运算首先访问______,然后使______的值加1。
48、执行int*p=newint操作,可以得到一个动态分配整型对象的______。
49、有说明语句:
int*p;则(*p)++运算首先访问______,然后使______的值加1。
50.C++目标程序经___________后生成扩展名为exe的可执行程序文件。
51.16位计算机中整型占__________个字节存储空间。
52.要在屏幕上显示\,world!
\应执行语句cout 54.作为语句的函数调用是通过__________________________来体现的。
55.执行if(x>=0||x 57.若一全局变量只允许本程序文件中的函数使用,则定义它时应加上修饰符_______________。
23 58.设有intw[3][4];,pw是与数组名w等价的数组指针,则pw应初始化为__________________________。
59.要使引用pr代表变量char*p;,则pr应初始化为___________________________。
60.在C++中封装性、继承性和____________是面向对象思想的主要特征。
61.假设inta=1,b=2;则表达式a+++--b的值为__________。
62.下面的程序实现输出x,y,z三个数中的最大值,请填入正确的内容。
#includevoidmain {intx=5,y=8,z=9,u,v;if_________u=x;elseu=y;if_________v=u;elsev=z; c
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 长沙理工大学C 题库附答案 长沙 理工大学 题库 答案