《面向对象程序设计》第10章在线测试

合集下载

C#程序设计第十章课后习题答案

C#程序设计第十章课后习题答案

单选:(1).NET中的大多数控件都派生于(C)类A. ClassB. FromC. ControlD. Object(2)在以下控件中,可用于输入数据的是(B)A. LabelB. TextBoxC. ButtonD. PictureBox(3)在以下控件中,可实现多项选择的是(A)A. CheckBoxB.RadioButtonboBoxD.NumericUpDown(4)不属于容器控件的是(C)A. GroupBoxB.PanelC.MenuStripD.TapControl(5)(B)控件组合了TextBox控件和ListBox控件的功能。

belboBoxC.ProgressBarD.PictureBox(6)让控件不可以使用的属性是以下哪一个?BA. AllowDropB.EnabledC.BoundsD.Visible(7)让控件不可显示的属性是以下哪一个?DA. AllowDropB.EnabledC.BoundsD.Visible(8)不能用于设置控件布局位置的属性是(C)A.LeftB.TopC.SizeD.Location(9)可用来设置文字颜色的属性是(B)A. BackColorB.ForeColorC.TextD.Parent(10)TextBox控件的(B)属性将输入的字符代替显示为指定的密码字符。

A. TextB.PasswordCharC.TextAlignD.Multiline(11)所有控件都一定具有的属性是(D)A.TextB.BackColorC.Items(12)当用户鼠标左键单击窗体或控件系统将触发(D)事件A. ActivatedB.LoadC.DoubleClickD.Click(13)用户修改了文本框中的内容时,系统将触发(A)事件。

A .xtChanged B.CheckedChanfed C.SelectedIndexChanged D.SizeChanged(14)在列表框或组合框中,当用户重新选择另一个选项时,系统将触发(C)事件。

西安石油大学大二(上)C++面向对象程序设计课件各章习题

西安石油大学大二(上)C++面向对象程序设计课件各章习题

习题1基本概念题:9.1 填空题:(1)一个完整的可运行程序中必须有一个名为________的函数。

(2)一条表达式语句必须以________作为结束符。

(3)一个函数定义由________和________两部分组成。

(4)若一个函数的定义处于调用它的函数之前,则在程序开始可以省去该函数的________语句。

(5)C++头文件和源程序文件的扩展名分别为________和________。

(6)程序文件的编译错误分为________和_________两类。

(7)当使用________保留字作为函数类型时,该函数不返回任何值。

(8)当函数参数表用_________保留字表示时,则表示该参数表为空。

(9)从一条函数原型语句“int fun1(void);”可知,该函数的返回类型为________,该函数带有________个参数。

(10)在#include命令中所包含的头文件,可以是系统定义的头文件,也可以是________定义的头文件。

(11)重载一个函数的条件是:该函数必须在参数的个数或参数的__________上与其它同名函数有所不同。

(12)如果一个函数中有多个默认参数,则默认参数必须全部处在形参表的________部分。

(13)函数形参的作用域是该函数的____________。

(14)当定义一个结构体变量时,系统分配给该变量的内存大小等于各成员所需内存大小的_______。

9.2 选择题:(1)以下说法中正确的是()。

A. C++程序总是从第一个定义的函数开始执行B. C++程序总是从main函数开始执行C. C++函数必须有返回值,否则不能使用函数D. C++程序中有调用关系的所有函数必须放在同一个程序文件中(2)以下叙述中不正确的是()。

A. 在一个函数中,可以有多条return语句B. 函数的定义不能嵌套,但函数的调用可以嵌套C. 函数必须有返回值D. 不同的函数中可以使用相同名字的变量(3)函数重载是指()。

c++面向对象程序设计—考试题及习题讲解(免费下载)

c++面向对象程序设计—考试题及习题讲解(免费下载)

c++面向对象程序设计—考试题及习题讲解(免费下载)第一部分选择题(共20分)一、单项选择题(本大题共10小题,每小题2分,共20分)1.在C++中,函数原型不能标识( D )A.函数的返回类型B.函数参数的个数C.函数参数类型D.函数的功能p108有叙述2.在C++程序中,对象之间的相互通信通过( B ) ?A.继承实现B.调用成员函数实现C.封装实现D.函数重载实现3.对于任意一个类,析构函数的个数最多为( B )A.0B.1C.2D.3P288 析构函数不接受参数,也不返回数值。

类只可能有一个析构函数,不能进行析构函数的重载。

4.下面函数模板定义中不正确的是( A )A.templateB.templateQF(Q x){ QF(Q x){return Q+x; return x+x;} }C.templateD.templateTF(T x){ TF(T x){return x*x; return x>1;} }5.友元关系不能( c A )?A.继承B.是类与类的关系C.是一个类的成员函数与另一个类的关系p316D.提高程序的运行效率6.语句ofstream f(〃SALARY.DAT〃,ios::app|ios::binary);的功能是建立流对象f,试图打开文件SALARY.DAT并与之连接,并且( A )A.若文件存在,将文件写指针定位于文件尾;若文件不存在,建立一个新文件B.若文件存在,将其置为空文件;若文件不存在,打开失败C.若文件存在,将文件写指针定位于文件首;若文件不存在,建立一个新文件D.若文件存在,打开失败;若文件不存在,建立一个新文件7.下面说法正确的是( B )A.内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方B.内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方C.类的内联函数必须在类体内定义D.类的内联函数必须在类体外通过加关键字inline定义8.可以用p.a的形式访问派生类对象p的基类成员a,其中a是( D )A.私有继承的公有成员B.公有继承的私有成员C.公有继承的保护成员D.公有继承的公有成员9.在公有派生情况下,有关派生类对象和基类对象的关系,不正确的叙述是( A )A.派生类的对象可以赋给基类的对象B.派生类的对象可以初始化基类的引用C.派生类的对象可以直接访问基类中的成员D.派生类的对象的地址可以赋给指向基类的指针10.对于类定义class A{public:virtual void func1( ){ }void func2( ){ }};class B:public A{public:void func1( ){cout<<〃class B func 1〃<<end1;}< p="">virtual void func2( ){cout<<〃class B func 2〃<<end1;}< p="">};下面正确的叙述是( C )A. A::func2( )和B::func1( )都是虚函数B. A::func2( )和B::func1( )都不是虚函数C. B::func1( )是虚函数,而A::func2( )不是虚函数D. B::func1( )不是虚函数,而A::func2( )是虚函数第二部分非选择题(共80分)二、填空题(本大题共10小题,每小题2分,共20分)11.定义类的动态对象数组时,系统只能够自动调用该类的拷贝构造函数对其进行初始化。

面向对象程序设计智慧树知到期末考试章节课后题库2024年山东建筑大学

面向对象程序设计智慧树知到期末考试章节课后题库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秋北理工面向对象程序的设计在线作业

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. 在横线处填入语句()后,下列语句序列能够正确执行。

《面向对象程序设计》在线测试

《面向对象程序设计》在线测试

封面作者:PanHongliang仅供个人学习《面向对象程序设计》第04章在线测试剩余时间:59:57答题须知:1、本卷满分20分。

2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。

3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。

第一题、单项选择题(每题1分,5道题共5分)1、若B类为A类的友元类,则下面的说法正确的是()A、B类的所有成员函数都是A类的友元函数B、B类指定的成员函数才是A类的友元C、A类的所有成员函数可以访问B类的成员D、B类的私有成员函数不能可以访问A类的私有成员2、一个类的友元不是该类的成员,与该类的关系密切,所以它()。

A、有this指针,有默认操作的对象B、没有this指针,可以有默认操作的对象C、有this指针,不能执行默认操作D、没有this指针,也就没有默认操作的对象3、下面的语句中能将类 B 定义为类A的友元类的是()A、friend class B。

B、class A{ friend B}。

C、class A{ friend class B。

}。

D、class friend B class A。

4、如果类 B 是类A的友元类,n是类A的私有数据成员,函数f(A tmp)是类B的公有成员函数,a是类A的对象, b是B类的对象,下面语句正确的是()A、main(){ f(a)。

}B、main(){ b.f。

}。

C、main(){ a.n。

}。

D、main(){ b.f(a)。

}。

5、下面对于友元函数描述正确的是A、友元函数的实现必须在类的内部定义B、友元函数是类的成员函数C、友元函数破坏了类的封装性和隐藏性D、友元函数不能访问类的私有成员第二题、多项选择题(每题2分,5道题共10分)1、一个类的友元不是该类的成员,与该类的关系密切,所以下面它的说法错误的是()。

A、有this指针,有默认操作的对象B、没有this指针,可以有默认操作的对象C、有this指针,不能执行默认操作D、没有this指针,也就没有默认操作的对象2、下面关于友元的说法正确的是()A、友元函数是拥有成员函数一切权利B、友元是一种成员函数C、友元可以直接访问类的所有成员D、友元不能访问类的私有成员3、下面关于友元函数正确的说法是()A、在类中用关键词friend声明友元函数B、友元函数说明的位置只能在类的public区C、友元函数的定义只能放在类的外部D、友元函数不是类的成员函数4、关于友元函数的说法正确的是()A、友元函数可以是普通函数,可以是其他类的成员函数,也可以是本类的成员函数B、友元函数可以访问多个类的私有成员和保护成员C、在调用友元函数的时候需要使用“.”运算符D、如果友元函数是某个类的成员函数,在定义这个友元函数的时候要使用类前缀。

面向对象C++程序设计——各章习题答案

面向对象C++程序设计——各章习题答案

面向对象C++程序设计各章习题参考答案第1章面向对象技术概论一.选择题1. A2. C3. D4. B5. C二.填空题1. 封装、继承、多态性2. 面向对象分析(OOA)、面向对象设计(OOD)、面向对象实现(OOI)、面向对象测试(OOT)和面向对象系统维护(OOSM)。

3. 实例实例4. 多态性5. 消息消息传递第2章 C++简单程序设计一.选择题:1. B2. B3. B4. C5. C6. D7. D8. C9. D 10. C11. A 12. A二.填空题:1.4;2;2;8;12. 103. 04. 87;79;115. (1)x值为6,表达式的值为6(2)x值为6,但表达式的值为5(3)x值为4,表达式的值为4(4)x值为5,表达式的值为5(5)x变为6,y的值为5(6)x变为4,y的值为4(7)x变为6,y的值为25(8)x的值为6,y的值为366. const7. c+i*sizeof (c[i])8. x<=3||x>=109. a<=b&&b!=510. 30 30三.程序分析题:1.s=552.a,b99,96,194100.2,94.8,1963.i,s=15,564.13 15 22 14 645.14 25四.编程题(参考答案):1. 假设数组中含8个元素,参考答案如下:#include<iostream.h>void main(){int c=0,i,a[8],k;cout<<"input a[i]:"<<endl;for(i=0;i<8;i++)cin>>a[i];cout<<"input k:"<<endl;cin>>k;for (i=0;i<8;i++)if (a[i]>=k) c++;cout<<c;cout<<endl;}2. 参考答案:#include<iostream.h>void main(){const int n=50,m=10;int i,j,k;int index[n]; //存放学号float s,score[n],sum; //存放成绩for(i=0;i<n;i++)cin>>index[i]>>score[i]; //从键盘输入数据sum+=score[i];cout.precision(2); //设置输出宽度cout<<endl<<"A verage score:"<<sum/n; //输出平均分数cout.width(28); //设置输出宽度cout<<endl<<"Student ID:"; //输出学号for(i=0;i<10;i++) //选取前m名分数最高的学生,输出其学号及成绩{s=score[i];k=i;for(j=i+1;j<n;j++)if(s<score[j]){s=score[j];k=j;}if(k>i){score[k]=score[i];score[i]=s;j=index[k];index[k]=index[i];index[i]=j;}cout.width(4); //输出序号,学号和分数cout<<endl<<i+1;cout.width(11);cout<<index[i];cout.width(12);cout.precision(2);cout<<score[i];}cout<<endl;}3.#include<iostream.h>void main(){double x,y;cout<<”Input x:”;cin>>x;if(x<3.0)y=(x-2)*x;elseif(x>=-3.0&&x<=3.0) y=x;else y=x-2;cout<<”x=”<<x<<”,”<<”y=”<<y<<endl;}执行该程序后,显示如下信息:(分别输入3.2,2,-5) Input x:3.2↙输出结果如下:x=3.2,y=1.2Input x:2↙输出结果如下:x=2,y=2Input x:-5↙输出结果如下:x=-5,y=35该程序中使用了if-else if-else语句,用来实现三路分支。

郑州大学《面向对象程序设计》1-12章在线测试题库

郑州大学《面向对象程序设计》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的语句错误的是()。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《面向对象程序设计》第10章在线测试
A B
C D 、关于异常对象的说法正确的是(
A
B
对象
C、以引用方式传递异常对象时,抛出的是局部静态对象
D 对象
A块相当于一个以类型为单一参数的函数
B 以捕捉
C块中可以声明变量,该变量可以在块外使用
D 数值
A B
C D
、为保证程序中的全局变量不与开发商提供的全局变量重名,可以采取的措施是(
A B
C D
C、C++程序绝对不能出现错误
D、异常处理使C++程序在出现错误的情况下仍能继续运行
2、下面说法正确的是()
A、C++程序中可以存在多个名字空间
B、不同的名字空间中不能出现名字相同的变量
C、名字空间能避免名字冲突
D、C++程序中也可以不定义名字空间
3、关于异常处理的说法正确的是()
A、将异常的检测与处理分离
B、异常就是错误
C、异常由函数调用引起
D、在上层调用函数中使用try检测函数调用是否引发异常
4、下面与异常处理相关的关键字有()
A、Throw
B、throw
C、try
D、Try
5、下面的说法正确的是()
A、引发异常用关键字throw
B、在被调用函数中检测到异常条件用throw都可以引发异常
C、被调用函数只有在try块中用throw才可以引发异常
D、检测到的异常由catch捕获并处理
第三题、判断题(每题1分,5道题共5分)
1、抛出异常的模块并不负责异常的处理,该异常的处理可以程序中的任何位置。

正确错误、异常处理器根据抛出异常模块的报告来处理异常。

正确错误、异常信号传递方式有三种:传值方式、引用方式和指针方式。

正确错误表示函数将会抛出所有类型的异常
正确错误处理程序的出现次序无关紧要。

正确错误。

相关文档
最新文档