




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、机密启用前大连理工大学网络教育学院2018年春C/C+帝言程序设计期末考试复习题 注意事项:本复习题满分共:400 分。一、单选题1、已知 int x=2,y=8;执行 x*=y+2 ;后 x 的值是()。A.20B.18C.16D.122、下列 while循环的执行次数是()。while(int i=0) i+;A.0B.1C.5D.无限3、以下不属于 C语言关键字的是()。A.shortB.intC.caseD.DIM4、当一个类对象离开它的作用域时,系统将自动调用该类的()。A.构造函数B.拷贝构造函数C.析构函数D.默认构造函数5、 下列哪个函数不是类的成员函数。()A.析构函数B.构
2、造函数C.拷贝构造函数D.友元函数6、 在执行 int a 印 3=1 , 2, 3, 4, 5, 6;语句后,a00的值是()。A.4B.1C.2D.57、C+中用 3 个保留字实现异常处理,除了 throw和 catch 外,还有()。A.ifB.classC.tryD. return8、当类的继承方式为()时,基类中的公有成员和保护成员都以私有成员身份出现在派生类中,而基类的私有成员在派生类中不可直接访问。大工 C/C+语言程序设计期末复习资料 第 1页 共 21 页D.以上都不是9、作用域分辨符可以用来限定要访问的成员所在的类的名称,它的符号表示为(C.; 10、下列哪个函数的作用是字
3、符串比较(11、指出下面合法的标识符是(12、设有数组定义 char array =Public”;则数组 array 所占的空间为(A. 4 个字节D. 7个字节13、下面表达式中错误的是(14、在定义 int a5;之后,对 a的引用正确的是(数),可以防止函数改变数据成员的值。18、设 int n=10,i=3;则赋值运算 n%=i+1 执行后,n 的值是(大工 C/C+语言程序设计期末复习资料A.私有继承B.公有继承C.保护继承A.:B. ?:D.A. strlen()B. strcmp()C. strcat()D. strcpy( )A. 3abB. intC. stu2D. $ab
4、cB. 5个字节C. 6个字节A. b=a+B. a/=2C. a+b=5D. a=5,b=6,c=7A. a5B. a4.3C. a(5)D. a015、执行下面的程序段后,输出结果是()。main()char a=english”;printf(%c”,a0);A. engliB. eC. englishD. sh16、当类的继承方式为( 成员不可直接访问。)时,基类的公有和保护成员的访问属性在派生类中不变,而基类的私有A.私有继承B.公有继承C.保护继承D.以上都不是17、类中将关键字()写在函数体之前函数头之后,说明该函数是一个常成员函数(或const成员函A. constB. sta
5、ticC. friendD. void)。第 2 页共 21 页大工 C/C+语言程序设计期末复习资料第3页 共 21 页A. 0C. 2D. 119、下列选项中正确的语句是()。A. x+B.int(x+5)C. y+5=6;D.x=y+5;20、绑定工作在编译连接阶段完成的情况称为()。A.静态绑定B.动态绑定C.重载D.继承21、在下面的一维数组定义中,哪一个有语法错误()。A. int a=1,2,3;B. int a10=0;C. int a;D. int a5;22、假定 AB为一个类,则该类的拷贝构造函数的声明语句为()。A. AB&(AB x);B. AB(AB x);
6、C. AB(AB&);D. AB(AB* x)23、()是给对象取一个别名,它引入了对象的同义词。A.指针B.引用C.枚举D.结构24、 下列运算符中,()运算符在 C+中不能重载。A. ?:B.+C. -D.=25、一个()允许用户为类定义一种模式,使得类中的某些数据成员、某些成员函数的参数和返回值能 取多种数据类型。A.函数模板B.模板函数C.类模板D.模板类26、如果一个类至少有一个纯虚函数,那么就称该类为()。A.抽象类B.虚基类C.派生类D.以上都不对27、进行文件操作时需要包含()文件。A.iostream.hB.fstream.hC.stdio.hD.stdlib.h28
7、、当使用 ifstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式是() 。B. 3大工C/C+语言程序设计课程考试模拟试卷(A)第 4 页 共 21 页C. ios:trunc29、 在 ios 中提供控制格式的标志位中,()A. hexC. dec30、C+中用 3 个保留字实现异常处理,除了A. ifC. throw31、设有定义 int x; double v;,贝 U 10+x+v 值的数据类型是A. intC. char32、对于 while、do - while循环结果说法正确的是A.只是表达形式不同C. do - while结构中的语句至少执行一次33、 下列
8、符号中可以用作C+标识符的是()。A. _radiusC. else34、预处理命令在程序中都是以()符号开头的。A. *C. &35、当说明一个结构变量时,系统分配给它的内存为A.各成员所需内存量的总和C.成员中占内存量最大的成员所需的容量36、()的功能是对对象进行初始化。A.析构函数C.构造函数37、 ()只能访问静态成员变量A.虚函数C.构造函数38、在下列各类函数中,A.析构函数A. ios:inB. ios:outD. ios:binary是转换为十六进制形式的标志位。B. octD. lefttry和 catch 外,还有()。B. classD. return()。B.
9、 doubleD.不确定()。B. while结构中的语句至少执行一次D.条件成立时,他们有可能一次也不执行B. foo barD. 3roomB. #D. ()。B.结构中第一个成员所需内存量D.结构中最后一个成员所需内存量B.数据成员D.静态成员函数静态成员函数和类以外的函数和数据不能访问类中的非静态成员变量OB.静态函数D.析构函数()不是类的成员函数。大工C/C+语言程序设计课程考试模拟试卷(B)第 5 页 共 21 页C.拷贝构造函数39、在执行 int a3=1 , 2, 3, 4, 5, 6;语句后,a11的值是()。A.4B. 1C.2D. 540、 下列不可以被重载的运算符是
10、()。A.?:B. +C.-41、C+语言对 C 语言做了很多改进,C+语言相对于A.增加了一些新的运算符C.规定函数说明符必须用原型42、设 array 为一个数组,则表达式 sizeof(array)/sizeof(array0)的结果为()B. array数组中元素个数C. array 数组中每个元素所占的字节数D. array 数组占的总字节数43、将两个字符串连接起来组成一个字符串时,选用 ()函数。A. strlen()C. strcat()44、函数调用不可以()。A.出现在一个表达式中C.作为一个函数的实参45、 C+源程序文件的扩展名是()。A. .CPPC. .DLL46、
11、 下列运算符中优先级最高的为()。A. !B. strcap()D. strcmp()B.出现在执行语句中D.作为一个函数的形参B. .CD. .EXEB. %C.D. &47、 有关构造函数的说法错误的是()。A.构造函数名字和类的名字一样C.构造函数无任何函数类型48、通常的拷贝构造函数的参数是()。A.某个对象名B.构造函数在说明类变量时自动执行D.构造函数有且只有一个B.某个对象的成员名C.某个对象的引用名D.某个对象的指针名D.友元函数D. *C语言的最根本的变化是()。B.允许函数重载,并允许设置缺省参数D.弓 I 进了类和对象的概念A. array 数组首地址大工 C/C
12、+语言程序设计期末复习资料第6页 共 21 页49、为了判断两个字符串si和 s2是否相等,应当使用()50、在定义 int a36;后,第 i0 个元素是()单选题答案4、C二、填空题1、 C+嘿中可以包含公有、私有和 三种具有不同访问控制权的成员。2、 在 C+呻有两种类型的注释符,一种是C语言中使用的注释符(/* -*/ ),另一种是3、是给对象取一个别名,它引入了对象的同义词。4、 语句 while(int i=0) i-;while循环的次数是。5、 类模板的使用实际上是将类模板实例化成一个具体的。6、 执行 操作将释放由 P所指向的动态分配的数组空间。7、假定 x=i,则表达式(x
13、=i?20:30)的值为。8、 表达式 sqrt(8i) 和 pow(6,3)的值分别为 和。9、 空串的长度为,存储它需要占用 _ 个字节。10、 strlen(apple) 的值为。11、 当一个类对象离开它的作用域时,系统将自动调用该类的。12、 定义一个模板函数或模板类时要用到的第一个C+呆留字是。13、 假定用户没有给一个名为AB的类定义构造函数,则系统为其隐含定义的构造函数为A. if(si=s2)B. if(si=s2)C. if(strcpy(si,s2)D. if(strcmp(si,s2)=0)A. a24C. a3iB. ai3D. a42i、A6、 B7、C9、Ai0、
14、Bii、Ci6、B2i、C26、A3i、B36、C4i . D46.Ai2、Di7、A22、C27、B32、C37、B42. B47.Di3、Ci8、C23、B28、A33、A38、D43.C48.Ci4、Di9、D24、A29、A34、B39、D44.D49.Di5、B20、A25、C30、C35、A40、A45.A50.B大工C+吾言程序设计期末复习资料第7页 共 21 页14、 C+中默认 main 函数的返回类型是 ,所以在定义 main 函数时可以不写返回值类型。15、 使用 cin和 cout 进行输入输出操作的程序必须包含头文件 ,其语句格式为。16、假定 x=10.5 , y=
15、-4.6,则表达式 floor(fabs(x+y) 的值为。17、 对一个一维字符数组 a进行初始化的数据为12345”,贝 U a0和 a3元素对应的初值分别为 和O18、 对一个类中的数据成员的初始化可以通过构造函数中的 实现,也可以通过构造函数中的 实 现。19、随机函数 rand()%20的值在 至 区间内。20、 类中数据和成员函数默认访问控制权类型为。21、 假定一个类对象数组为A10,当离开它的作用域时,系统自动调用该类析构函数的次数为。22、 若需要把一个函数“ void F(); ”定义为一个类AB的友元函数,则应在类AB定义中加入一条语句:。23、 假定一个类 AB中有一个
16、静态整数成员bb,在类外为它进行定义并初始化为0时,所使用的语句为。24、 在一个类的后缀加的运算符重载成员函数的定义中,带有 个整型参数。填空题答案1.保护 2 . /3 .引用 4. 0次 5 .类6. delete p;7. 208. 9、2169. 0、110 . 511 .析构函数12. template13. AB()(14.int15. iostream.h #include16. 517. 1 、418.初始化表、函数体19 . 0、1920.私有21. 1022. friend void F();23. int AB:bb=0;24. 1三、判断题1、 循环语句的循环体可能一
17、次都不执行。()2、 使用 cin 和 cout进行输入输出操作的程序必须包含头文件math.h。()3、 C+源程序文件的扩展名是.exe。()4、 关键字中,用以说明类中公有成员的是private。()5、 一个类只能有一个对象。 ()6、 拷贝构造函数不是类的成员函数。()7、 内联函数的关键字为 friend。()大工C+吾言程序设计期末复习资料第8页 共 21 页8、 构造派生类的对象时,就要对基类数据成员、新增数据成员和成员对象的数据成员进行初始化。()9、 一个派生类可以同时有多个基类,这种情况称为单继承。()10、 抽象类不能实例化。()11、 在 C+嘿中可以包含私有、公有和
18、友元三种具有不同访问控制权的成员。()12、 定义枚举类型的关键字是union。()13、 设有定义 intx; double v;则 5+x+v值的数据类型是 int。()14、 strcat()函数的作用是求字符串长度。 ()15、 说明静态数据成员时,前边要加关键字statico ()16、 成员函数可以重载。()17、 delete 的功能是动态分配内存。()18、 关键字中,用以说明类中公有成员的是protected。()19、 流是一种抽象,它负责在数据的生产者和数据的消费者之间建立联系,并管理数据的流动。()20、 类型兼容规则是指在需要基类对象的任何地方,都可以使用公有派生类的
19、对象来替代。()21、do-while循环可以写成 while 循环。()22、 所谓指令,就是计算机可以识别的命令。()23、 使用内联函数是以牺牲增大空间开销为代价的。()24、 对象是系统中用来描述客观事物的一个实体,它是用来构成系统的一个基本单位。()25、内联函数的关键字为 void。()26、 友元关系可以继承。()27、 new的功能是动态分配内存。()28、 析构函数是在对象的生存期即将结束的时刻被自动调用的。()29、 绑定工作在编译连接阶段完成的情况称为静态绑定。()30、使用 I/O流的程序需要包含 iostream.h。()判断题答案1、V2、X3、x4、 X5、X6、
20、X7、X8、V9、X10、V11、X12、X13、X14、X15、V16、V17、X18、X19、V20、V21、V22、V23、V24、V25、X大工C+吾言程序设计期末复习资料第9页 共 21 页26、X27、V28、V29、V30、V四、阅读下列程序,请在答题卡上写出输出结果1、#includevoid main()int x=1,y=2,z=3;x+=y+=z;cout(xy?y:x)”,”;cout(xy?x+:y+)”,”;coutyendl;输出结果:6,5,62、#include void main()int i;for(i=4;i=10;i+)if(i%3=0)continu
21、e;couti;输出结果:4578103、#includeclass CSampleprivate:int i;static int k;public:CSample();void Display();CSample:CSample()(i=0;k+;大工 C+吾言程序设计期末复习资料第10页 共 21 页void CSample:Display()(couti=i,k=kendl;int CSample:k=0;void main()(CSample a,b;a. Display();b. Display();输出结果:i=0,k=2i=0,k=24、#include void main()
22、(int x=1,y=0;switch(x)(case 1:switch(y)(case 0:coutfirst ;break;case 1:coutsecond ;break;case 2:coutthirdn”;输出结果:first third5、#includevoid main()(int i,j;for(i=4;i=1;i -)(cout*”;for(j=1;j=4 -i;j+)cout*;coutendl;大工 C+吾言程序设计期末复习资料第11页 共 21 页输出结果:*6、#includeclass CSample(int i;public:CSample();void Dis
23、play();CSample();CSample:CSample()(coutConstructor”,”;i=0;void CSample:Display()(couti=i,;CSample:CSample()(coutDestructorendl;void main()(CSample a;a.Display();输出结果:Constructor,i=0,Destructor7、#includevoid Swap(int& a, int& b);void main()int x(5), y(10);cout x= x” ,y= yendl;Swap(x, y);cout
24、x= x” ,y= yendl;大工 C+吾言程序设计期末复习资料第12页 共 21 页void Swap(int& a, int& b)int t;t=a;a=b;b=t;输出结果:x=5, y=10 x=10, y=58、#include class Samplepublic:Sample( ) cout Constructor endl; ;void fn(int i)static Sample c;cout i= iendl;void main()fn(10);fn(20);输出结果:Constructori=10i=20大工 C+吾言程序设计期末复习资料第13页 共
25、21 页9、#includeconst int N=8;void main()int aN=1,2,3,4,5,6,7,8;int i,x;for(i=0; iN/2; i+)x=ai;ai=aN -1-i;aN-1-i=x;for(i=0; iN; i+) coutai;输出结果:8765432110、#include class CSampleint i;public:CSample();CSample(int val);void Display();CSample();CSample:CSample()coutConstructor1endl;i=0;CSample:CSample(in
26、t val)coutConstructor2endl;i=val;void CSample:Display()couti=iendl;CSample:CSample()(coutDestructorendl;大工 C+吾言程序设计期末复习资料第14页 共 21 页void main()(CSample a,b(10);a. Display();b. Display();输出结果:Constructor1Constructor2i=0i=10DestructorDestructor五、编程题1、 编写一个程序输入一华氏温度,编程输出摄氏温度。已知:华氏温度(F)转换为摄氏温度(C)的计算公式为:
27、C (F 32) *5/9#includevoid main()(float c,f;coutf;c=(f-32)*5/9;cout摄氏温度:cendl;2、编写一个程序将输入的一个三位正整数逆转,例如,输入 123,输出 321。#includevoid main()(int n,i,j,k;coutn;i=n/100;/求百位数n=n -i*100;j=n/10;/求十位数n=n-j*10;k=n;/求个位数cout逆转数:kjiendl;3、 编写一个程序求一元二次方程ax2bx c 0的解。讨论下述情况:一、2-.(1)b4ac0,有两个相等实根;大工 C+吾言程序设计期末复习资料第1
28、5页 共 21 页(2)b24ac 0,有两个不等实根;(3)b24ac0,无实根(4)a 0,不是二次方程#include#includevoid main()float a,b,c,d;couta;coutb;coutc;d=b*b -4*a*c;if(a=0)cout不是二次方程!endl;else if(d=0)cout 一个实根:-b/(2*a)0)cout两个实根:( -b+sqrt(d)/(2*a),( -b-sqrt(d)/(2*a)endl;elsecout无实根! endl;4、 编写一个程序输入 3 个学生的英语和计算机成绩,并按总分从高到低排序。 要求设计一个学生类 S
29、tudent ,其定义如下:class Studentint english,computer,total;public:void getscore();/获取一个学生成绩void display。;/显示一个学生成绩;#includeclass Studentint english,computer,total;public:void getscore();void display();int retotal()return total;void Student:getscore()大工 C+吾言程序设计期末复习资料第16页 共 21 页coutenglish;coutcomputer;to
30、tal=english+computer;void Student:display()cout英语=english 计算机=computer 总分=totalretotal()retotal()Student *tmp=*p1;*p1=*p2;*p2=tmp;void main()Student *A3;for(int j=0;j3;j+)Aj=new Student;cout学生j+1getscore();int i;for(j=0;j2;j+)for(i=0;i2;i+)sort(A+i,A+i+1);coutendl排序结果如下:endl;for(i=0;idisplay();5、 编写
31、一个程序,求下列分数序列的前15项之和。2 3 5 8 13 21 , , , , ,1 2 3 5 8 13#includevoid main()int i,m,n,k;double s=0;m=1;n=2;for(i=1;i=15;i+)s=s+1.0*n/m;k=m;m=n;大工 C+吾言程序设计期末复习资料第17页 共 21 页n=k+n;couts=sendl;6、编写一个程序,计算三角形、正方形的面积。(要求:抽象出一个基类base,在其中说明一个虚函数,用来求面积)#includeclass baseprotected:int x,y;public:base(int x,int y)base:x=x;base:y=y;virtual void disp()/ 定义一个接口cout这个类没有面积endl;class triangle:public base/定义三角形类,基类成员x为底边长,y为高public:triangle(int x,int y):base(x,y);void disp()cout三角形面积:x*y*0.5endl;;class square:public base/定义正方形类,基类成员 x 为边长(public:square(int x):base(x,x);void disp()cout正方形面积:x*xdisp();p=&a
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医疗手术合同范本
- 合开店合同范本
- 卫生间装修工人合同范本
- 进厂入职合同范本
- 合伙投资合同范本范本
- 个人之间担保合同范本
- 合法会员合同范例
- 运行总工绩效合同范本
- 2025年常温远红外陶瓷及制品项目建议书
- 厨房人员用工合同范本
- 交通法律与交通事故处理培训课程与法律解析
- 广西版四年级下册美术教案
- 《换热器及换热原理》课件
- 儿童权利公约演示文稿课件
- UPVC排水管技术标准
- MSA-测量系统分析模板
- 血透室公休座谈水肿的护理
- 急诊预检分诊专家共识课件
- 广州市海珠区事业单位考试历年真题
- 2023年山西省太原市迎泽区校园招考聘用教师笔试题库含答案详解
- 2023中职27 婴幼儿保育 赛题 模块三 婴幼儿早期学习支持(赛项赛题)
评论
0/150
提交评论