《面向对象程序设计》第11章在线测试
《面向对象程序设计C++》期末试卷及标准答案(A)

《面向对象程序设计C++》期末考试试卷(A)班级:姓名:学号:分数:试卷说明:本套试题共四个大题,全部题目都答在答题纸上,写在其他地方均无效。
(答题纸在本套试卷的第10页上)一、选择题(每小题2分,共40分)1、C++是()。
A. 面向对象的程序设计语言B. 面向过程的程序设计语言C. 既支持面向对象的程序设计又支持面向过程的程序设计的混合型语言D. 非结构化的程序设计语言2、面向对象程序设计思想的主要特征中不包括()。
A. 封装性B. 多态性C. 继承性D. 功能分解,逐步求精3、若定义:string str; 当语句cin>>str; 执行时,从键盘输入:Microsoft Visual Studio 6.0!所得的结果是str=()。
A. Microsoft Visual Studio 6.0!B. MicrosoftC. Microsoft VisualD. Microsoft Visual Studio 6.04、考虑下面的函数原型声明:void testDefaulParam(int a,int b=7,char z='*'); 下面函数调用中,不合法的是()。
A. testDefaulParam(5);B. testDefaulParam(5,8);C. testDefaulParam(5,'#');D. testDefaulParam(0,0,'*');5、下列语句中,将函数int sum(int x, int y)正确重载的是()。
A. float sum(int x, int y);B. int sum(int a, int b);C. float sum(float x, float y);D. double sum(int y, int x);6、下列表示引用的方法中,()是正确的。
已知:int a=1000;A. int &x=a;B. char &y;C. int &z=1000;D. float &t=&a;7、在一个函数中,要求通过函数来实现一种不太复杂的功能,并且要求加快执行速度,选用()。
面向对象程序设计智慧树知到期末考试章节课后题库2024年山东建筑大学

面向对象程序设计智慧树知到期末考试答案章节题库2024年山东建筑大学1.以下泛型类的定义是正确的。
()public class Generic { private T t =new T(); public void setT(T t) { this.t = t; } public TgetT() { return t; }}答案:错2.以下代码是正确的。
()package test;import java.util.ArrayList;importjava.util.Date;import java.util.List;public class GenericTest1 { publicstatic void main(String[] args) { List list2 = newArrayList<>(); list2.add(new Date()); list2.add(newString("abc")); String str = list2.get(0); }}答案:错3.数组的元素个数是可以变化的。
()答案:错4.限制泛型上界时,如下代码是正确的。
()Generic<? extends List> f =null;f = new Generic();答案:错5.定义一个外部类时,不能使用private和protected来修饰()答案:对6.已知TestClass.java的定义如下:public class TestClass{ public static voidmain(String[] args){ int a; System.out.println("a="+a); }}以上代码是正确的()。
答案:错7.如下代码创建泛型类Generic的对象后,Generic gt5 = newGeneric<>();Genericgt4 = new Generic<>();下面的这行代码是正确的。
17秋北理工面向对象程序的设计在线作业

北理工《面向对象程序设计》在线作业试卷总分:100 测试时间:--单选题多选题判断题、单选题(共38 道试题,共76 分。
)1. 下列关于C++函数的描述中,正确的是()。
A. 每个函数至少要有一个参数B. 每个函数都必须返回一个值C. 函数在被调用之前必须先进行声明或定义D. 函数不能自己调用自己满分:2 分2. 下列关键字中不能用来声明类成员访问权限的是()。
A. publicB. staticC. protectedD. private满分:2 分3. 在下列的各类函数中,______不是类的成员函数。
A. 构造函数B. 析构函数C. 友元函数D. 拷贝构造函数满分:2 分4. 派生类对象对它的基类成员中()是可以访问的。
A. 公有继承的私有成员B. 公有继承的保护成员C. 公有继承的公有成员D. 私有继承的公有成员满分:2 分5. 定义p并使p指向动态空间中的包含30个整数的数组所使用的定义语句为()。
A. int*p=newint[30]B. int*p=newint(30)C. int*p=new[30]int*p=new[30]D. *p=newint[30]满分:2 分6. 多继承时对象的构造顺序中包含如下4步:①所有非虚基类的构造函数按照它们被继承的顺序构造;②所有虚基类的构造函数按照它们被继承的顺序构造;③所有子对象的构造函数按照它们声明的顺序构造;④派生类自己的构造函数体;这4个步骤的正确顺序是()。
A. ④③①②B. ②④③①C. ②①③④D. ③④①②满分:2 分7. 若函数原型为voidFun(intx,inty=6,intchar='a'),则下列调用错误的是()。
A. Fun(5)B. Fun(5, 'b')C. Fun(5,8)D. Fun(2,4, 'b')满分:2 分8. 在横线处填入语句()后,下列语句序列能够正确执行。
2022春西安电子科技大学《面向对象程序设计(C++)》大作业答案

学习中心/函授站_姓名学号西安电子科技大学网络与继续教育学院2022 学年上学期《面向对象程序设计(C++)》期末考试试题(综合大作业)一、简答题(共 10 分)1.(3 分)什么是引用?它与指针有什么区别?答:(任选一个版本,不要两个版本都抄)答案版本1:引用是为已存在的变量取了一个别名,引用和引用的变量共用同一块内存空间。
1) 引用必须被初始化,指针不必。
所以不存在指向空值的引用,但是存在指向空值的指针。
2) 引用初始化以后不能被改变,指针可以改变所指的对象。
答案版本2:引用是某个变量或对象的别名。
(1)引用不是变量,它不占据内存空间,它本身没有内存地址。
引用只是被引用的变量或对象的替身。
(2)引用与指针的区别在于应用不是变量,而指针是变量。
没有引用的引用,却有指针的引用。
2.(3 分)C++提供了哪些循环语句?它们各自的特点是什么?答:C++提供了三种循环语句for、while和do-while。
while循环语句先判断是否满足循环条件,如果满足循环条件,则执行一次循环体,再判断是否执行下一次循环,否则退出循环。
do-while循环语句先执行一次循环体后再判断是继续执行循环体还是退出循环。
for循环先设置循环变量的初值,再判断是执行循环体还是退出循环体。
如果执行了循环体,再改变循环变量值后,判断是执行下一次循环体还是退出循环,依此类推。
3.(4 分)构造函数的作用是什么?在创建派生类的对象时,应按照怎样的顺序调用构造函数?答:构造函数的作用是创建对象并对其进行必要的初始化。
构造函数调用顺序:基类构造函数、子对象类构造函数(如果有)、派生类构造函数。
二、填空题(每空 2 分,共 20 分)1.C++程序中的数据可以分为两大类,;2.C++x = 5,y = 0,z = 3,则表达式 !x || y++ && z 执行表达式后y的值4.下列程序在构造函数和析构函数中申请和释放类的私有成员,请完成该类的实现。
2015秋浙江大学《面向对象程序设计》在线作业及答案

2015秋浙江大学《面向对象程序设计》在线作业及答案您的本次作业分数为:100分单选题1.下面有关析构函数特征的描述中,正确的是()。
• A 一个类中可以定义多个析构函数• B 析构函数名与类名完全相同• C 析构函数不能指定返回类型• D 析构函数可以有一个或多个参数正确答案:C单选题2.派生类中虚函数原型的()。
• A 函数类型可以与基类中虚函数的原型不同• B 参数个数可以与基类中虚函数的原型不同• C 参数类型可以与基类中虚函数的原型不同• D 以上都不对正确答案:D单选题3.类和派生类正确的关系是()。
• A 从基类到派生类称为继承。
• B 从派生类到基类称为派生。
• C 派生类包含了基类。
• D 从基类到派生类称为派生。
正确答案:D单选题4.析构函数的特征是()。
• A 析构函数可以有多个参数。
• B 析构函数只能在类体内定义。
• C 一个类中只能定义一个析构函数。
• D 一个类中能定义多个析构函数。
正确答案:C单选题5.如果在基类中将show声明为不带返回值的纯虚函数,正确的写法是()。
• A virtualshow()=0;• B virtualvoidshow();• C virtualvoidshow()=0;• D voidshow()=0virtual;正确答案:C单选题6.若有定义char *words[]={"FORTRAN", "BASIC","PASCAL","JAVA","C"};则输出结果为AVA的语句是()。
• A printf("%s",*words[3]+1)• B printf("%s",*words[4]+1)• C printf("%s",*(words+3)+1)• D printf("%s",(*words+4)+1)单选题7.已知有预编译指令#define s(a,b) (a*b),则执行语句i=1;Area=s(3, 5-i)+3;后,变量area的值为()。
15秋西电《面向对象程序设计(C++)》在线作业 答案

西电《面向对象程序设计(++)》在线作业一、单选题(共 25 道试题,共 100 分。
)1. ()是面向对象语言中的一种复合数据类型。
它是复合数据类型的超集。
. 复合数据类型. 类. 对象. 成员. 引用正确答案:2. 阅读下面程序int list[]=nw int[10]##for(int I=0##I<=list.lngth##I++) list[I]=I##list[0]的值为( ). 10. 9. 不一定. 出错正确答案:3. 强制挂起线程,而且指定挂起时间的函数是(). slp( ). suspn( ). rsum( ). join( )正确答案:4. 阅读下面程序int list[]=nw int[10]##for(int I=0##I<=list.lngth##I++) list[I]=I##list[0]的值为( ). 10. 9. 不一定. 出错正确答案:5. 设有如下定义:设有如下定义: strutsk{ int; flot; }t; int*p; 若要使p指向t中的成员,则正确的赋值语句为()。
. p=&;. p=t.;. p=&t.;. *p=t.;正确答案:6. 下列对派生类的描述中,错误的是()。
. 一个派生类可以作为另一个派生类的基类. 派生类至少有一个基类. 派生类的缺省继承方式为privt. 派生类只继承了基类的公有成员和受保护成员正确答案:7. 一个pplt程序(). 不用修改就一定可以当作应用程序运行. 怎么修改都不能当作应用程序运行. 可以又作为应用程序运行. 要视操作系统和浏览器而定正确答案:8. 阅读下面程序 lss x3125 { puli stti voi min(String [] rgs) { int i=0## i=i++## Systm.out.println(i)## }}} 现在想先编译再运行该程序,结果是(). 0. 1. 2. 出错正确答案:9. uiolip的()方法可以循环播放声音文件. ply. loop. ontinu. rply正确答案:10. 阅读下面程序 String s="Hllo"##String t=s##t="1234"t代表的字符串为. null. 1234. Hllo. H正确答案:11. int lmnts[]={1,2,3,4,5,6}## int hol[]={10,9,8,7,6,5,4,3,2,1}## 要把lmnts数组中的所有元素复制到hol数组中,因该使用. Systm.rryopy(lmnts,0,hol,0,lmnts.lngth). Systm.rryopy(hol,0,lmnts,0,lmnts.lngth). Systm.rryopy(hol,0,lmnts,0,hol.lngth). Systm.rryopy(lmnts,0,hol,0,hol.lngth)正确答案:12. ++语言中whil循环和o-whil循环的主要区别是()。
郑州大学《面向对象程序设计》1-12章在线测试题库

《面向对象程序设计》第02章在线测剩余时间:59:56试答题须知:1、本卷满分20分.2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。
3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。
第一题、单项选择题(每题1分,5道题共5分)1、在关键字public后面定义的成员为类的()成员。
A、私有B、公用C、保护D、任何2、当一个类对象结束它的生存期的时侯,系统自动调用该类的( )。
A、无参构造函数B、带参构造函数C、拷贝构造函数D、析构函数3、类的构造函数被自动调用执行的情况是在定义该类的 ( )A、成员函数时B、数据成员时C、对象时D、友元函数时4、假定AB为一个类,则执行“AB *p=new AB(1,2);”语句时共调用该类构造函数的次数为( )。
A、0B、1C、2D、35、假定AB为一个类,px为指向该类的一个含有n个对象的动态数组的指针,则执行“delete []px;"语句时共调用该类析构函数的次数为( )。
A、0B、1C、nD、n+1第二题、多项选择题(每题2分,5道题共10分)1、下面有关类说法正确的是(A,B,D )A、一个类可以有多个构造函数B、一个类只有一个析构函数C、析构函数需要指定参数D、在一个类中可以说明具有类类型的数据成员2、关于封装,下列说法中正确的是()。
A、通过封装,对象的全部属性和操作结合在一起,形成一个整体B、通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见)C、通过封装,每个对象都成为相对独立的实体D、通过封装,对象的属性都是不可见的3、定义析构函数时,错误的说法是()。
A、其名与类名完全相同B、返回类型是 void 类型C、无形参,也不可重载D、函数体中必须有 delete 语句4、假定AA为一个类,a为该类私有的数据成员,GetValue()为该类公有函数成员,它返回a的值,x为该类的一个对象,则访问x对象中数据成员a的语句错误的是()。
计算机11 面向对象程序设计 考试试卷(A卷) 参考解答0

A a3, a4(4);
cout<<GetN(a3)<<" "<<GetN(a4)<<endl;
cout<<a3.Num<<" "<<a4.Num<<endl;
cout<<A::Num<<endl;
}
解答:程序1运行结果为:(评分标准:每对一行得1分,共5分)
Student=19
Teacher=32
Student=22
Teacher=35
Graduate=22
Graduate end.
Teacher end.
Student end.
Teacher end.
Student end.
第3页共4页
3.程序3(10分)
#include <iostream>
using namespace std;
8.若A类中的一个成员函数说明如下:voidset(A&a),则A&a的含义是()。
A.指向类A的名为a的指针B.将a的地址赋给变量Set
C.a是类A的对象引用,用来作函数Set()的形参
D.变量A与a按位与的结果作为函数Set的参数
9.在C++中把不返回任何类型的函数应该说明为()。
A.voidB.char
The Base.
The Derive1.
The Derive1.
The Derive2.
六、编程题(20分)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《面向对象程序设计》第11章在线测试
A B
C D
vector)属于(
A B
C D
deque)属于(
A B
C D
multiset
A B
C D 、多重映射(multimap
A B
C D
2、下面说法正确的是()
A、使用STL时,容器元素的输入输出流的头文件是iostream.h
B、使用STL时,容器元素的输入输出流的头文件是iostream
C、iostream.h和iostream是一样的
D、iostream.h和iostream是不一样的
3、下面关于迭代器的说法正确的是()
A、迭代器在STL中起关联作用,类似指针
B、迭代器在STL中定义,程序员不能自己定义
C、迭代器是一个对象在对应的容器上遍历
D、迭代器一般不单独使用
4、下面属于关联容器的是()
A、向量
B、集合
C、队列
D、映射
5、如果char str[]=“China!Great Wall”,生成string类型s并且s的字符串内容也是“China!Great Wall”的语句是()
A、string s(str);
B、string s(str,1);
C、string s(str, 1,11);
D、string s=str;
第三题、判断题(每题1分,5道题共5分)
1、STL以一种类型参数化的方式实现,这种方式基于模板。
正确错误
2、STL的代码分为三类:容器(Container)、迭代器(Iterator)和算法(Algorithm)
正确错误
正确错误
、迭代器是指针的泛化,它允许程序员以相同的方式处理不同的数据结构(容器)。
正确错误
、迭代器是算法访问容器的中介。
正确错误。