《面向对象程序设计》第03章在线测试
- 格式:docx
- 大小:68.19 KB
- 文档页数:3
(0837)《面向对象程序设计》网上作业题及答案1:第一次作业2:第二次作业3:第三次作业4:第四次作业5:第五次作业6:第六次作业1:[论述题]编写一个简单的乘法器,界面如下图所示,在第一个文本框中输入第一个乘数;在第二个文本框中输入第二个乘数;当单击"=”按钮时,在第三个文本框中输出其乘积。
参考答案:问题(1):Java程序分为Java应用程序(或Java application)和Java小应用程序(或Java applet);这段程序是Java小应用程序。
问题(2):界面上包含一个标签(JLabel),一个按钮(JButton)和一个文本框(JTextField);点击按钮后,文本框内显示“好好学习,天天向上”。
问题(3):ActionListener是动作事件监听器接口;方法actionPerformed()是ActionListener中的方法;其功能是处理applet界面里发生的动作事件。
2:[论述题]请设计一个软件包。
要求该软件包至少拥有正方形类、圆类。
要求每个类都具有构造方法、计算该图形的周长的成员方法和计算该图形的面积的成员方法。
然后编写一个测试程序,分别创建这些类的实例对象,并输出这些实例对象的周长和面积。
在创建这些实例对象时,构造方法的调用参数值分别是:正方形:左上定点的坐标为(5,10),边长为15。
圆形:圆心的坐标为(0,0),圆心为15。
参考答案:问题(1):Test3是SuperTest的子类(或SuperTest是Test3的父类,或继承关系)。
问题(2):super指对象的父类(或超类);this指使用它的对象本身(或对对象自己的引用)。
问题(3):程序的输出是:Hi, I am OliveNice to meet you!Age is 7My age is 7My parent's age is 353:[论述题]编写一个程序,要求随机生成61个学生的成绩(从0到100的整数),在将成绩排序(由高到低)后保存到文件"score.txt”中。
《面向对象程序设计》第03章在线测试A BC D为一个类,则执行”语句时将自动调用该类的( )。
A BC D、当一个类对象结束它的生存期的时侯,系统自动调用该类的A BC D一段程序的定义如下,的语句应该为A BC D为一个类,则执行“”语句时共调用该类构造函数的次数为A BC DD、在一个类中可以说明具有类类型的数据成员2、静态数据成员的初始化不是在()中进行的。
A、构造函数B、任何成员函数C、所属类D、全局区3、下列描述属于类的成员函数的是( )A、构造函数B、析构函数C、友元函数D、拷贝构造函数4、假定AB为一个类,则执行“AB *s=new AB(a,5);”语句的结果是A、动态生成对象AB赋值给变量sB、动态生成对象sC、如果对象AB中有公有成员a,则s->a可以访问该成员D、动态生成对象AB,该对象的地址赋值给变量s5、假定一个类的构造函数为A ( intaa, int bb) { a = aa; b = bb; } ,则执行 A x(4,5); 语句后, x.a 和 x.b 的值分别为 ( ) 。
A、4B、5C、20D、0第三题、判断题(每题1分,5道题共5分)1、所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是数据类型。
正确错误2、对类中引用成员的初始化是通过构造函数中给出的初始化表实现的。
正确错误++允许使用友元,但是友元会破坏封装性。
正确错误、某类中的友元类的所有成员函数可以存取或修改该类中的私有成员。
正确错误是一个隐含于每一个类的成员函数的特殊指针,它是一个指向正在被某个成员函数操作的对象的指针正确错误。
国家开放大学《javascript程序设计》第三章测试题与答案解析(正确答案已红色标注)一、判断题试题1满分1.00未标记标记试题试题正文在JavaScript中,当使用new运算符创建一个对象变量后,一定要使用delete运算符把创建的对象变量撤销。
选择一项:对错反馈正确答案是“错:试题2满分1.00未标记标记试题试题正文JavaScript的核心语言对象包括字符串对象、数学对象、日期对象、数组对象。
选择一项: 对错反馈正确答案是“对。
试题3满分1.00未标记标记试题试题正文定义一个构造器,相当于定义一个类,在函数内引用的变量或者方法都会成为类的成员。
选择一项:对错反馈正确答案是“错:试题4满分1.00未标记标记试题试题正文substring()方法一共有两个参数,省略第二个参数表示从参数开始位置提、截取到字符串结束。
选择一项:对错反馈正确答案是“对二试题5满分1.00未标记标记试题试题正文splice(index,len,[item])该方法会改变原始数组。
选择一项:对错反馈正确答案是“对二试题6满分1.00未标记标记试题试题正文在正则表达式中+表示匹配0到多个值。
选择一项:对错反馈正确答案是“错:试题信息未标记标记试题信息文本二、单项选择题试题7满分1.00未标记标记试题试题正文对代码u varx=myhouse.kitchen v的哪种说明正确()。
选择一项:a.将字符串“myhouse.kitchen”赋值给变量xb.假设myhouse对象存在,它将kitchen对象的myhouse属性值赋给变量xc.将myhouse和kitchen的值相加之和赋给对象xd.假设myhouse对象存在,它将myhouse对象的kitchen属性值赋给变量x反馈你的回答正确正确答案是:假设myhouse对象存在,它将myhouse对象的kitchen属性值赋给变量x试题8满分1.00未标记标记试题试题正文如何获取变量名叫str字符串的长度()o选择一项:a.strlen(str)b.str.lengthc.前面的都不对d.count(str)反馈你的回答正确正确答案是:strength试题9满分1.00未标记标记试题试题正文varn="miaoweiketang,,.indexOf("wei,,,6);n的值为()。
《面向对象程序设计》模拟试题及答案一、单项选择题(每小题2分,共20分)1. 程序中主函数的名字为()。
A. mainB. MAINC. MainD. 任意标识符2. 为了提高程序的运行速度,可将不太复杂的功能用函数实现,此函数应选择()。
A. 内联函数B.重载函数C.递归函数D.函数模板3. 将两个字符串连接起来组成一个字符串时,选用()函数。
A. strlen()B. strcap()C. strcat()D. strcmp()4. 用new运算符创建一维整型数组的正确语句是__________。
A. int *p=new a[10];B.int *p=new float[10];C. int *p=new int[10];D.int *p=new int[5]={1,2,3,4,5}5. 假定有定义“int b[10]; int *pb;”,则不正确的赋值语句为()。
A. pb=b;B. pb=&b[0];C. pb=new int;D. pb=b[5];6. 假定AA为一个类,a为该类公有的数据成员,x为该类的一个对象,则访问x对象中数据成员a的格式为()。
A. x(a)B. x[a]C. x->aD. x.a7. 假定AB为一个类,则执行“AB x(a,5);”语句时将自动调用该类的( )。
A. 带参构造函数B. 无参构造函数C. 拷贝构造函数D. 赋值重载函数8. 对于任一个类,用户所能定义的析构函数的个数至多为( )。
A. 0B. 1C. 2D. 任意个9. 对类中引用成员的初始化是通过构造函数中给出的( )实现的。
A. 函数体B. 参数表C. 初始化表D. 初始化表或函数体10. 如果表达式a==b中的“==”是作为普通函数重载的运算符,若采用运算符函数调用格式,则可表示为()。
A. a.operator==(b)B. b.operator==(a)C. operator==(a,b)D. operator==(b,a)二、填空题(每小题2分,共20分)1. 常数-4.205和6.7E-9分别具有__________和__________位有效数字。
北理工《面向对象程序设计》在线作业试卷总分: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. 在横线处填入语句()后,下列语句序列能够正确执行。
《面向对象程序设计》课程模拟测试一、选择题1、C++语言是从早期的C语言逐渐发展演变而来的.与C语言相比,它在求解问题方法上进行的最大改进是()A.面向过程B.面向对象C.安全性D.复用性2、关于虚函数的描述中,正确的是()A.虚函数是一个static类型的成员函数B.虚函数是一个非成员函数C.基类中说明了虚函数后,派生类中将其对应的函数可不必说明为虚函数D.派生类的虚函数与基类的虚函数具有不同的参数个数和类型3、下列关于构造函数的描述中,错误的是()A.构造函数可以设置默认参数;B.构造函数在定义类对象时自动执行C.构造函数可以是内联函数;D.构造函数不可以重载4、在以下关于C++语言的注释的叙述中,不正确的是()A.C++程序中,注释可用“/*”、“*/”形式表示,也可用“//”形式表示B.C++编译器在编译一个程序时,将跳过注释,不对其进行处理C.C++编译器在编译一个程序时,可发现注释中的单词拼写错误D.程序中注释的多少不会影响所生成的可执行文件的长度5、C++语言的跳转语句中,对于break和continue说法正确的是()A.break语句只应用于循环体中B.continue语句只应用于循环体中C.break是无条件跳转语句,continue不是D.break和continue的跳转范围不够明确,容易产生问题6、下列关于C++函数的说明中,正确的是()A.内联函数就是定义在另一个函数体内部的函数B.函数体的最后一条语句必须是return语句C.标准C++要求在调用一个函数之前,必须先声明其原型D.编译器会根据函数的返回值类型和参数表来区分函数的不同重载形式7、在下面的一维数组定义中,哪一个有语法错误。
()A.int a[ ]={1,2,3} B.int a[10]={0}C.int a[ ] D.int a[5]8、面向对象系统不具有()特性A. 继承性B. 封装性C. 过程性D. 多态性9、下列静态数据成员的特性中,错误的是()A.说明静态数据成员前边加staticB.静态数据成员要在类体外初始化C.引用静态数据成员时,要在静态数据成员前加<类名>和作用域运算符D.静态数据成员不是一个类所有对象共享的10、若用数组名作为函数调用时的实参,则实际上传递给形参的是()A.数组首地址B.数组的第一个元素值C.数组中全部元素的值D.数组元素的个数二、填空题1、C++语言中的每条基本语句以作为结束符,每条复合语句以作为结束符。
东财《面向对象的程序设计》在线作业--汇总含答案14春13秋13春东财《面向对象的程序设14春13秋13春东财《面向对象的程序设计》在线作业一(随机)试卷总分:100 测试时间:--单选题多选题、单选题(共18 道试题,共72 分。
)1. 有定义public Manager extends Employee那么如果raiseSalary和fire是Employee类中的公有方法,则AA. Manager也拥有这两个方法B. Manager没有这两个方法C. Manager拥有这两个方法,切不可以再定义同名的方法D. 不确定满分:4 分2. 包语句可以放在(B )A. 源文件的任意位置B. 源文件的第一条语句C. 源文件的末尾D. 源文件的中间满分:4 分3. Frame是(B )类的子类A. PanelB. WindowC. ComponentD. Container满分:4 分4. Java中int类型的变量占几个字节的内存?(C )A. 1B. 2C. 4D. 8满分:4 分5. 当我们在代码中调用了repaint()函数更新显示的时候,AWT线程会调用(B)方法首先将画面清空,然后调用paint()方法绘制新的内容。
A. paint( )B. updata( )C. repaint( )D. ondraw( )满分:4 分6. 下列属于Runnable接口实现的函数是。
DA. publicRunnble(Thread t)B. public void start( )C. public void main( )D. public void run( )满分:4 分7. Java中,调用new时,在执行显式的成员初始化以后会(C )A. 分配新的对象的空间B. 退出new方法C. 执行构造函数D. 不一定满分:4 分8. Applet程序中,用于显示的函数是?(D)A. HelloApplet( )B. init( )C. start( )D. paint(Graphics g)满分:4 分9. 当包含Applet的浏览器窗口最小化又再次恢复以后,(B )函数被调用。
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的值为()。
封面作者: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、如果友元函数是某个类的成员函数,在定义这个友元函数的时候要使用类前缀。
《面向对象程序设计》第03章在线测试
A B
C D
为一个类,则执行”语句时将自动调用该类的( )。
A B
C D
、当一个类对象结束它的生存期的时侯,系统自动调用该类的
A B
C D
、类的构造函数被自动调用执行的情况是在定义该类的
A B
C D
为一个类,则执行”语句时共调用该类构造函数的次数为
A B
C D
D、另一个类的对象
2、假定AA为一个类,a为该类私有的数据成员,GetValue()为该类公有函数成员,它返回a的值,x为该类的一个对象,则访问x对象中数据成员a的语句错误的是()。
A、x.a
B、x.a()
C、x->GetValue()
D、x.GetValue()
3、构造函数的初始化表一般用来()
A、初始化常量数据成员
B、初始化子对象
C、初始化引用成员
D、初始化静态数据成员
4、下面关于成员函数的说法错误的是()
A、类定义中只能说明函数成员的函数头,不能定义函数体
B、类中的函数成员可以在类体中定义,也可以在类体之外定义
C、类中的函数成员在类体之外定义时必须要与类声明在同一文件中
D、在类体之外定义的函数成员不能操作该类的私有数据成员
5、下面关于静态数据成员的说法错误的是()
A、静态数据成员是类的所有对象所共有的
B、静态数据成员要在构造函数内初始化
C、类的每个对象有自己的静态数据成员
D、静态数据成员不能通过类的对象调用
第三题、判断题(每题1分,5道题共5分)
1、所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是数据类型。
正确错误
正确错误
、静态成员函数允许访问类的数据成员。
正确错误
、当两个对象之间进行复制时,复制完成后这两个对象的内容将完全独立,没有关联。
正确错误
、建立类的对象时,先调用各个对象成员的构造函数,初始化相应的对象成员,然后才执行类的构造函数,初始化类中其他成员。
正确错误。