专题六 主流语言中面向对象程序设计的基本概念《Python程序设计》45分钟专题训练(浙江版)
|
2份
|
16页
|
63人阅读
|
0人下载
内容正文:
浙江省单独招生考试《Python程序设计》45分钟专题训练专辑,共8份试卷。试卷命题与高考紧密相关,精选具有代表性和典型性的高考常考题。旨在帮助学生系统地复习和巩固计算机类理论知识,熟悉高考题型和命题规律,提高解题能力和应试技巧,为高考取得优异成绩打下坚实的基础,本训练卷适用于即将参加计算机类高考的学生。与本专辑配套的还有浙江省单独招生考试《数据库》《计算机网络及网页设计》《计算机组装与维护》《数字媒体技术》《计算机基础》45分钟专题训练专辑,欢迎同学和老师们下载使用。
《Python程序设计》
专题六:主流语言中面向对象程序设计的基本概念
时间:45分钟 总分:100分
班级___________ 姓名__________ 学号__________ 成绩________
一、单项选择题(本大题共20小题,每题2.5分,共50分)
1.面向对象程序设计的核心思想不包括( )
A.封装 B.继承 C.多态 D.顺序执行
2.在面向对象中,“封装”的主要目的是( )
A.让代码更简洁
B.隐藏对象内部细节,仅暴露必要接口
C.实现代码复用
D.允许一个类继承多个父类
3.下列关于“类”和“对象”的关系,说法正确的是( )
A.一个类只能创建一个对象
B.对象是类的实例化结果
C.类是对象的实例化结果
D.类和对象没有关联
4.Python中定义类的关键字是( )
A.class B.def C.object D.classdef
5.下列选项中,属于面向对象中的“继承”是指( )
A.子类完全复制父类的代码
B.子类获得父类的属性和方法,同时可添加新功能
C.父类继承子类的特性
D.多个类合并为一个类
6.Java中,所有类的直接或间接父类是( )
A.Object B.Class C.String D.System
7.下列属于“多态”表现形式的是( )
A.一个类有多个构造方法
B.子类重写父类的方法,不同子类调用同一方法呈现不同行为
C.一个方法接收多个参数类型
D.类的属性可以动态修改
8.Python中,创建类的实例的语法是( )
A.类名。实例 ()
B.实例 = 类名 ()
C.new 类名 ()
D.类名。创建 ()
9.面向对象中,“方法重写”是指( )
A.子类定义与父类同名且参数列表相同的方法
B.类中定义多个同名但参数不同的方法
C.方法调用自身
D.一个方法调用另一个类的方法
10.下列编程语言中,原生不支持面向对象编程的是( )
A.Python B.Java C.C D.C++
11.在类中,用于初始化对象属性的构造方法,Python中是( )
A.init()
B.constructor()
C.inid()
D.construct()
12.面向对象中的“抽象类”的主要作用是( )
A.直接创建实例
B.定义子类必须实现的接口方法,统一子类结构
C.隐藏所有属性和方法
D.实现所有业务逻辑
13.Java中,声明一个类继承另一个类的关键字是( )
A.extends B.implements C.inherit D.extends from
14.下列关于“接口”的描述,正确的是( )
A.接口可以包含具体方法实现
B.类可以实现多个接口
C.接口不能被继承
D.接口包含属性和方法的完整实现
15.Python中,子类调用父类的构造方法,正确的方式是( )
A.父类名。构造方法 ()
B.super ().init()
C.super().init()
D.父类名.init(self)
16.面向对象中,“组合”是指( )
A.一个类是另一个类的子类
B.一个类包含另一个类的实例作为属性
C.多个类合并为一个类
D.类的方法调用其他类的静态方法
17.下列属于面向对象语言的是( )
A.C B.Fortran C.Python D.Pascal
18.Java中,被final关键字修饰的类的特点是( )
A.可以被继承
B.不能被继承
C.可以被实例化多次
D.不能被实例化
19.Python中,类的实例方法的第一个参数通常是( )
A.this B.self C.me D.object
20.面向对象程序设计的主要优势不包括( )
A.代码复用性高
B.便于维护和扩展
C.适合处理简单线性问题
D.降低代码耦合度
2、 多项选择题(本大题共10小题,每小题3分,共30分)
1.下列属于Python循环结构核心关键字的有( )
A.for B.while C.if D.break
2.关于Python选择结构的语法规则,说法正确的有( )
A.单分支结构仅需if关键字
B.双分支结构必须包含else关键字
C.多分支结构可包含多个elif关键字
D.选择结构的代码块无需缩进
3.下列函数中属于Python math模块常用函数的有( )
A.sum B.sqrt C.randint D.pow
4.关于Python自定义函数的说法,正确的有( )
A.函数定义以def关键字开头
B.函数参数可分为位置参数和关键字参数
C.函数体为空时需用pass占位
D.函数必须有return语句返回值
5.下列属于Python异常处理关键字的有( )
A.try B.except C.else D.loop
6.下列属于面向对象程序设计核心特征的有( )
A.封装 B.继承 C.多态 D.顺序
7.关于“类”与“对象”的关系,说法正确的有( )
A.类是对象的模板,定义对象的属性和方法
B.对象是类的实例,拥有类的特征
C.一个类只能创建一个对象
D.类不占用内存,对象占用内存
8.Python语言中,面向对象编程的基本要素包括( )
A.类 B.属性 C.方法 D.指针
9.下列关于“封装”特性的描述,正确的有( )
A.隐藏对象内部实现细节,仅暴露公共接口
B.提高代码安全性和可维护性
C.禁止外部访问对象的所有属性
D.便于修改对象内部逻辑而不影响外部使用
10.主流面向对象编程语言共有的OOP特性有( )
A.支持类的定义与实例化
B.支持单继承或多继承
C.支持方法重写实现多态
D.必须显式声明对象类型
三、是非选择题(本大题共10小题,每小题2分,共20分)1.Python中顺序结构的语句必须严格按照书写顺序执行,逻辑无关的语句也不能交换位置。( )2.选择结构的代码块必须进行缩进,否则会报语法错误。( )
3.for循环的range ()函数中,结束值是可以取到的,例如range (1,5)会生成1、2、3、4、5五个整数。( )
4.while循环的循环条件可以是恒为True的表达式,此时需要通过break语句终止循环。( )
5.continue语句的作用是终止整个循环,不再执行后续循环迭代。( )
6.自定义函数时,若函数体为空,可使用pass语句占位,避免语法错误。( )7.Python中math模块的max ()函数使用前必须先导入math模块,否则无法调用。( )
8.异常处理结构中,finally块中的代码无论是否发生异常,都会执行。( )
9.循环嵌套时,内层循环的break语句只会终止内层循环,不会影响外层循环的执行。( )
10.自定义函数的参数若为列表、字典等可变类型,函数内对参数的修改会影响函数外的原始数据。( )
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$
浙江省单独招生考试《Python程序设计》45分钟专题训练专辑,共8份试卷。试卷命题与高考紧密相关,精选具有代表性和典型性的高考常考题。旨在帮助学生系统地复习和巩固计算机类理论知识,熟悉高考题型和命题规律,提高解题能力和应试技巧,为高考取得优异成绩打下坚实的基础,本训练卷适用于即将参加计算机类高考的学生。与本专辑配套的还有浙江省单独招生考试《数据库》《计算机网络及网页设计》《计算机组装与维护》《数字媒体技术》《计算机基础》45分钟专题训练专辑,欢迎同学和老师们下载使用。
《Python程序设计》
专题六:主流语言中面向对象程序设计的基本概念
时间:45分钟 总分:100分
班级___________ 姓名__________ 学号__________ 成绩________
一、单项选择题(本大题共20小题,每题2.5分,共50分)
1.面向对象程序设计的核心思想不包括( )
A.封装 B.继承 C.多态 D.顺序执行
【答案】D
【解析】OOP核心思想是封装、继承、多态,顺序执行是程序基本结构,不属于OOP核心思想。
2.在面向对象中,“封装”的主要目的是( )
A.让代码更简洁
B.隐藏对象内部细节,仅暴露必要接口
C.实现代码复用
D.允许一个类继承多个父类
【答案】B
【解析】封装是将对象的属性和方法封装在类内部,隐藏实现细节,通过公开接口与外部交互,保障数据安全性。
3.下列关于“类”和“对象”的关系,说法正确的是( )
A.一个类只能创建一个对象
B.对象是类的实例化结果
C.类是对象的实例化结果
D.类和对象没有关联
【答案】B
【解析】类是对象的抽象模板,对象是类的具体实例,一个类可创建多个对象。
4.Python中定义类的关键字是( )
A.class B.def C.object D.classdef
【答案】A
【解析】Python使用class关键字定义类,def用于定义函数,object是所有类的基类。
5.下列选项中,属于面向对象中的“继承”是指( )
A.子类完全复制父类的代码
B.子类获得父类的属性和方法,同时可添加新功能
C.父类继承子类的特性
D.多个类合并为一个类
【答案】B
【解析】继承允许子类复用父类的属性和方法,同时支持子类扩展或重写功能,提高代码复用性。
6.Java中,所有类的直接或间接父类是( )
A.Object B.Class C.String D.System
【答案】A
【解析】Java中Object类是所有类的根类,任何类默认继承Object,拥有其基础方法(如toString())。
7.下列属于“多态”表现形式的是( )
A.一个类有多个构造方法
B.子类重写父类的方法,不同子类调用同一方法呈现不同行为
C.一个方法接收多个参数类型
D.类的属性可以动态修改
【答案】B
【解析】多态是指同一方法在不同对象上有不同实现,核心是子类重写父类方法或接口实现。
8.Python中,创建类的实例的语法是( )
A.类名。实例 ()
B.实例 = 类名 ()
C.new 类名 ()
D.类名。创建 ()
【答案】B
【解析】Python通过“实例名 = 类名 (参数)”创建对象,无需new关键字,括号内为构造方法参数。
9.面向对象中,“方法重写”是指( )
A.子类定义与父类同名且参数列表相同的方法
B.类中定义多个同名但参数不同的方法
C.方法调用自身
D.一个方法调用另一个类的方法
【答案】A
【解析】方法重写要求子类方法与父类方法的方法名、参数列表、返回值类型一致,用于修改父类方法的实现逻辑。
10.下列编程语言中,原生不支持面向对象编程的是( )
A.Python B.Java C.C D.C++
【答案】C
【解析】C语言是面向过程编程语言,无类、对象、继承等OOP特性;Python、Java、C++均原生支持OOP。
11.在类中,用于初始化对象属性的构造方法,Python中是( )
A.init()
B.constructor()
C.inid()
D.construct()
【答案】A
【解析】Python中构造方法为__init__(),创建对象时自动调用,用于初始化对象属性;__construct__()是PHP的构造方法命名。
12.面向对象中的“抽象类”的主要作用是( )
A.直接创建实例
B.定义子类必须实现的接口方法,统一子类结构
C.隐藏所有属性和方法
D.实现所有业务逻辑
【答案】B
【解析】抽象类不能直接实例化,需子类继承并实现抽象方法,用于规范子类的行为,确保子类具备特定功能。
13.Java中,声明一个类继承另一个类的关键字是( )
A.extends B.implements C.inherit D.extends from
【答案】A
【解析】Java用extends实现类的继承,implements用于实现接口,一个类只能直接继承一个父类。
14.下列关于“接口”的描述,正确的是( )
A.接口可以包含具体方法实现
B.类可以实现多个接口
C.接口不能被继承
D.接口包含属性和方法的完整实现
【答案】B
【解析】接口是方法声明的集合,无具体实现,类可通过implements实现多个接口,实现多继承的效果。
15.Python中,子类调用父类的构造方法,正确的方式是( )
A.父类名。构造方法 ()
B.super ().init()
C.super().init()
D.父类名.init(self)
【答案】C
【解析】Python3中通过super().__init__()调用父类构造方法,无需显式传递self;也可通过“父类名.init(self, 参数)”调用,但super()更简洁。
16.面向对象中,“组合”是指( )
A.一个类是另一个类的子类
B.一个类包含另一个类的实例作为属性
C.多个类合并为一个类
D.类的方法调用其他类的静态方法
【答案】B
【解析】组合是“has-a”关系,如“汽车”类包含“发动机”类的实例,通过组合实现功能复用,区别于继承的“is-a”关系。
17.下列属于面向对象语言的是( )
A.C B.Fortran C.Python D.Pascal
【答案】C
【解析】Python是典型的面向对象语言,支持类、对象、继承、多态等核心特性;C、Fortran、Pascal均为面向过程语言。
18.Java中,被final关键字修饰的类的特点是( )
A.可以被继承
B.不能被继承
C.可以被实例化多次
D.不能被实例化
【答案】B
【解析】final修饰的类不可被继承,final修饰的方法不可被重写,final修饰的变量不可修改。
19.Python中,类的实例方法的第一个参数通常是( )
A.this B.self C.me D.object
【答案】B
【解析】Python类的实例方法必须以self作为第一个参数,指代当前对象实例,用于访问对象的属性和方法。
20.面向对象程序设计的主要优势不包括( )
A.代码复用性高
B.便于维护和扩展
C.适合处理简单线性问题
D.降低代码耦合度
【答案】C
【解析】OOP适合处理复杂问题,通过封装、继承、多态降低耦合、提高复用性和可维护性;简单线性问题更适合面向过程编程。
2、 多项选择题(本大题共10小题,每小题3分,共30分)
1.下列属于Python循环结构核心关键字的有( )
A.for B.while C.if D.break
【答案】ABD
【解析】for和while是定义循环的核心关键字,break用于终止循环,均属于循环结构相关关键字;if是选择结构关键字,不属于循环结构。
2.关于Python选择结构的语法规则,说法正确的有( )
A.单分支结构仅需if关键字
B.双分支结构必须包含else关键字
C.多分支结构可包含多个elif关键字
D.选择结构的代码块无需缩进
【答案】ABC
【解析】单分支结构仅需if关键字,双分支结构由if+else组成,多分支结构可通过多个elif扩展;选择结构的代码块必须缩进以标识归属,D选项错误。
3.下列函数中属于Python math模块常用函数的有( )
A.sum B.sqrt C.randint D.pow
【答案】ABD
【解析】sum(求和)、sqrt(平方根)、pow(幂运算)均是math模块常用函数;randint是random模块的函数,用于生成随机整数,C选项错误。
4.关于Python自定义函数的说法,正确的有( )
A.函数定义以def关键字开头
B.函数参数可分为位置参数和关键字参数
C.函数体为空时需用pass占位
D.函数必须有return语句返回值
【答案】ABC
【解析】自定义函数以def开头,参数支持位置和关键字传递,空函数体需pass占位;函数可无return语句,默认返回None,D选项错误。
5.下列属于Python异常处理关键字的有( )
A.try B.except C.else D.loop
【答案】ABC
【解析】try用于包裹可能出错的代码,except捕获异常,else在无异常时执行,均是异常处理核心关键字;loop并非Python关键字,D选项错误。
6.下列属于面向对象程序设计核心特征的有( )
A.封装 B.继承 C.多态 D.顺序
【答案】ABC
【解析】面向对象的核心特征是封装、继承和多态;顺序是程序基本结构,并非OOP专属特征,D选项错误。
7.关于“类”与“对象”的关系,说法正确的有( )
A.类是对象的模板,定义对象的属性和方法
B.对象是类的实例,拥有类的特征
C.一个类只能创建一个对象
D.类不占用内存,对象占用内存
【答案】ABD
【解析】类是抽象模板,对象是具体实例,一个类可创建多个对象;类仅定义结构不占内存,对象存储具体数据占用内存,C选项错误。
8.Python语言中,面向对象编程的基本要素包括( )
A.类 B.属性 C.方法 D.指针
【答案】ABC
【解析】Python面向对象的核心要素是类、属性和方法;Python通过引用管理对象,不支持直接操作内存的指针,D选项错误。
9.下列关于“封装”特性的描述,正确的有( )
A.隐藏对象内部实现细节,仅暴露公共接口
B.提高代码安全性和可维护性
C.禁止外部访问对象的所有属性
D.便于修改对象内部逻辑而不影响外部使用
【答案】ABD
【解析】封装并非禁止访问属性,而是通过访问控制规范访问方式;其核心是隐藏细节、暴露接口,提升安全性和可维护性,C选项错误。
10.主流面向对象编程语言共有的OOP特性有( )
A.支持类的定义与实例化
B.支持单继承或多继承
C.支持方法重写实现多态
D.必须显式声明对象类型
【答案】ABC
【解析】三种语言均支持类定义、实例化、继承和方法重写;Python无需显式声明对象类型(动态类型),而Java、C++需显式声明,D选项错误。
三、是非选择题(本大题共10小题,每小题2分,共20分)
1.Python中顺序结构的语句必须严格按照书写顺序执行,逻辑无关的语句也不能交换位置。( )
【答案】错
【解析】顺序结构中,逻辑无关的语句可交换上下位置,仅有关联的语句需按逻辑先后排列。
2.选择结构的代码块必须进行缩进,否则会报语法错误。( )
【答案】对
【解析】Python通过缩进标识代码块归属,选择结构(if/else/elif)后的代码块必须缩进,否则无法区分执行范围。
3.for循环的range ()函数中,结束值是可以取到的,例如range (1,5)会生成1、2、3、4、5五个整数。( )
【答案】错
【解析】range ()函数的结束值不可取,range (1,5)生成的整数序列为1、2、3、4,共四个数。
4.while循环的循环条件可以是恒为True的表达式,此时需要通过break语句终止循环。( )
【答案】对
【解析】while True构成无限循环,需在循环体内通过break语句满足特定条件时退出,否则程序会一直运行。
5.continue语句的作用是终止整个循环,不再执行后续循环迭代。( )
【答案】错
【解析】continue语句仅跳过当前循环体中后续的语句,直接开始下一次循环迭代,不会终止整个循环。
6.自定义函数时,若函数体为空,可使用pass语句占位,避免语法错误。( )
【答案】对
【解析】函数体不能为空,若暂时无需实现功能,用pass占位可满足语法要求,后续可补充代码。
7.Python中math模块的max ()函数使用前必须先导入math模块,否则无法调用。( )
【答案】错
【解析】max ()函数是Python内置函数,无需导入math模块即可直接使用,math模块中也包含max ()函数,功能一致。
8.异常处理结构中,finally块中的代码无论是否发生异常,都会执行。( )
【答案】对
【解析】finally块是异常处理的可选部分,其核心特性是无论try块执行成功或引发异常,都会被执行,常用于资源释放等操作。
9.循环嵌套时,内层循环的break语句只会终止内层循环,不会影响外层循环的执行。( )
【答案】对
【解析】break语句仅终止离它最近的一层循环,嵌套结构中内层break不会对外层循环产生影响。
10.自定义函数的参数若为列表、字典等可变类型,函数内对参数的修改会影响函数外的原始数据。( )
【答案】对
【解析】可变类型参数传递的是内存地址引用,函数内对其修改会直接作用于原始数据;不可变类型(如数字、字符串)则不会。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$