内容正文:
编写说明:河北省普通高等学校对口招生考试计算机类《算法与程序设计考点双析卷》,依据《河北省普通高等学校对口招生计算机类专业考试考试大纲》编写。“考点双析卷”即围绕一个考点,一份是老师的讲解卷一份是学生的练习卷。助力师生构建 “讲练结合” 的学习闭环,适用于高考复习教学。
本专辑第21、第22卷精准对标河北省考纲,知识模块(三)算法与程序基础:
1. 掌握算法的概念,理解算法描述方法,理解算法的设计步骤;
2. 理解算法时间复杂度、空间复杂度等算法性能评价基本方法;
3. 理解算法与程序的关系;
4. 掌握下列典型算法:选择法、冒泡法、插入等排序算法,顺序查找、二分法查找等查找算法;递归算法;最值、均值、公约数、素数、累加、累乘、阶乘、回文数、斐波那契数列等数学算法;字符串的加密算法。
河北省对口招生考试 计算机类
《算法与程序设计》考点双析卷 第21卷
算法与程序基础(2) 老师讲解卷
时间:45分钟 总分:100分
班级_______ 姓名_______ 学号_______ 成绩_______
一、单项选择题(本大题共20小题,每题3分,共60分)
1.程序流程图中,处理步骤用 表示。( )
A.矩形框 B.菱形框 C.圆形框 D.箭头
【答案】A
【详解】流程图中,矩形框代表处理步骤,菱形框是判断,箭头是控制流。
2.算法的“可行性”是指( )
A.算法步骤可以用现有技术实现 B.算法必须在计算机上运行
C.算法能处理所有可能的输入 D.算法的输出必须正确
【答案】A
【详解】可行性指 算法步骤可通过基本运算在有限次内完成,现有技术能实现。
3.以下排序算法中,时间复杂度最坏情况下为 O(n²) 的是( )
A.归并排序 B.快速排序 C.堆排序 D.基数排序
【答案】B
【详解】快速排序最坏情况(如数据有序)时间复杂度O(n²);归并、堆排序是O(n log n),基数排序是线性复杂度(O(d(n+r)))。
4.算法分析的主要目的是( )
A.检查算法是否正确 B.优化算法的效率
C.统计算法的代码行数 D.验证算法的可读性
【答案】B
【详解】算法分析通过计算时间/空间复杂度,找出优化点,提升效率;正确性需测试,代码行数和可读性非分析核心。
5.二分查找的前提是( )
A.数据无序 B.数据有序且顺序存储
C.数据链表存储 D.数据元素个数为偶数
【答案】B
【详解】二分查找需 数据有序(才能二分比较)+ 顺序存储(便于随机访问中间元素);链表无法随机访问,故不适用。
6.以下说法错误的是( )
A.算法可以用自然语言描述 B.算法的实现必须用C#语言
C.流程图是算法的图形化表示 D.伪代码介于自然语言和程序语言之间
【答案】B
【详解】算法可通过多种语言实现(如C#、Java、Python),并非必须用C#。
7.关于算法的确定性,描述正确的是( )
A.算法的步骤必须明确,无歧义 B.算法必须能在有限步完成
C.算法的输出必须唯一 D.算法可以处理所有输入
【答案】A
【详解】确定性指 每一步含义明确,无歧义;B是有穷性,C错误(输出可以是结果集合,只要步骤明确),D错误(算法针对特定输入)。
8.当数据基本有序时,( )排序效率最高。
A.冒泡排序 B.快速排序 C.插入排序 D.选择排序
【答案】C
【详解】插入排序在数据基本有序时,只需少量移动操作,时间复杂度接近O(n);冒泡、快速(最坏O(n²))、选择(始终O(n²))效率更低。
9.以下控制结构不属于算法的基本控制结构的是( )
A.顺序结构 B.循环结构 C.递归结构 D.选择结构
【答案】C
【详解】算法的基本控制结构是 顺序、选择(分支)、循环,递归是基于三者的复杂结构(非基本)。
10.算法的空间复杂度是指( )
A.算法代码的长度 B.算法运行时的内存占用
C.算法的输入数据量 D.算法的输出数据量
【答案】B
【详解】空间复杂度衡量 算法执行过程中需要的存储空间(如变量、栈、辅助结构)。
11.顺序查找适用于( )
A.有序数组 B.无序数组 C.链表 D.以上都可以
【答案】D
【详解】顺序查找逐个比较元素,对数据结构(数组、链表)和是否有序无严格要求(有序时可提前终止,但算法本身支持所有情况)。
12.衡量算法优劣的核心标准是( )
A.代码行数少 B.时间和空间复杂度低
C.易于理解 D.运行时占用内存大
【答案】B
【详解】算法优劣主要看 时间复杂度(运行效率)和空间复杂度(内存占用),代码行数、可读性是次要因素。
13.一个算法可以没有( )
A.输入 B.输出 C.确定性 D.有穷性
【答案】A
【详解】算法可以有0个输入(如“输出Hello World”),但必须有输出、确定性、有穷性。
14.以下关于流程图的说法,正确的是( )
A.流程图中的椭圆表示数据流动 B.矩形框代表判断条件
C.菱形框代表处理步骤 D.流程图用于描述算法的步骤
【答案】D
【详解】流程图中,箭头是控制流(程序执行顺序),矩形框是处理步骤,菱形框是判断条件,核心是描述算法步骤。
15.算法的时间复杂度主要衡量( )
A.算法执行的实际时间 B.算法的可读性
C.算法执行的基本运算次数 D.算法的代码长度
【答案】C
【详解】时间复杂度是算法执行过程中基本运算(如比较、赋值)的次数,反映效率(与硬件无关)。
16.对有序数组 [1,3,5,7,9,11] ,用二分查找法找 11 ,需要比较的次数是( )
A.1次 B.2次 C.3次 D.4次
【答案】C
【详解】第1次:中间元素5,11>5→右半部分[7,9,11];
第2次:中间元素9,11>9→右半部分[11];
第3次:中间元素11,找到,共3次。
17.以下排序算法中,属于不稳定排序的是( )
A.冒泡排序 B.插入排序 C.快速排序 D.归并排序
【答案】C
【详解】快速排序在交换时可能打乱相同元素的相对位置(不稳定);冒泡、插入、归并排序能保持相同元素的相对位置(稳定)。
18.解决“求1到100的和”问题,最恰当的工作流程是( )
A.编写程序→设计算法→分析问题→运行程序
B.分析问题→设计算法→编写程序→运行程序
C.设计算法→分析问题→编写程序→运行程序
D.分析问题→编写程序→设计算法→运行程序
【答案】B
【详解】解决问题的逻辑是 先分析问题→设计算法(步骤)→编写程序实现→运行验证。
19.关于算法与程序的关系,正确的是( )
A.算法就是程序 B.程序是算法的具体实现
C.算法不需要依赖程序设计语言 D.程序的效率与算法无关
【答案】B
【详解】算法是抽象步骤,程序是算法的代码实现;算法需通过程序运行,程序效率由算法决定。
20.以下不属于算法基本特征的是( )
A.确定性 B.有穷性 C.二义性 D.可行性
【答案】C
【详解】算法需满足确定性(步骤无歧义)、有穷性(步骤有限)、可行性(步骤可实现)、输入、输出,二义性会导致含义模糊,不符合算法要求。
二、填空题(本大题共8小题,每题5分,共40分)
21.算法可以没有输入,但是需要有____________输出。
【答案】一个或多个
【详解】算法有一个或多个输出,它是一组与输入有关的量值,是算法进行信息加工后得到的结果。
22.算法设计的要求包括________、可读性、 稳健性 、高效率与低存储量的要求。
【答案】正确性
23.流程图中表示计算与赋值的符号是 _______________。
【答案】矩形
【详解】算法的流程图符号平行四边形表示输入或输出,矩形表示计算与赋值,菱形表示条件判断。
24.算法的描述方法可分为用自然语言描述算法、用 ___________ 描述算法和用N - S描述算法。
【答案】流程图
25.算法就是解决问题的 ___________ ,且步骤是有限的。
【答案】方法和步骤
26.算法的输出是指算法结束后________的结果。
【答案】产生
27.算法的输入是指算法开始前________的数据。
【答案】给定
28._______通过不断将搜索的范围缩小一半来查找目标值,直到目标值被找到或确定目标值不在。
【答案】二分查找法
试卷第6页,共6页
试卷第5页,共6页
学科网(北京)股份有限公司
$
编写说明:河北省普通高等学校对口招生考试计算机类《算法与程序设计考点双析卷》,依据《河北省普通高等学校对口招生计算机类专业考试考试大纲》编写。“考点双析卷”即围绕一个考点,一份是老师的讲解卷一份是学生的练习卷。助力师生构建 “讲练结合” 的学习闭环,适用于高考复习教学。
本专辑第21、第22卷精准对标河北省考纲,知识模块(三)算法与程序基础:
1. 掌握算法的概念,理解算法描述方法,理解算法的设计步骤;
2. 理解算法时间复杂度、空间复杂度等算法性能评价基本方法;
3. 理解算法与程序的关系;
4. 掌握下列典型算法:选择法、冒泡法、插入等排序算法,顺序查找、二分法查找等查找算法;递归算法;最值、均值、公约数、素数、累加、累乘、阶乘、回文数、斐波那契数列等数学算法;字符串的加密算法。
河北省对口招生考试 计算机类
《算法与程序设计》考点双析卷 第21卷
算法与程序基础(2) 老师讲解卷
时间:45分钟 总分:100分
班级_______ 姓名_______ 学号_______ 成绩_______
一、单项选择题(本大题共20小题,每题3分,共60分)
1.程序流程图中,处理步骤用 表示。( )
A.矩形框 B.菱形框 C.圆形框 D.箭头
2.算法的“可行性”是指( )
A.算法步骤可以用现有技术实现 B.算法必须在计算机上运行
C.算法能处理所有可能的输入 D.算法的输出必须正确
3.以下排序算法中,时间复杂度最坏情况下为 O(n²) 的是( )
A.归并排序 B.快速排序 C.堆排序 D.基数排序
4.算法分析的主要目的是( )
A.检查算法是否正确 B.优化算法的效率
C.统计算法的代码行数 D.验证算法的可读性
5.二分查找的前提是( )
A.数据无序 B.数据有序且顺序存储
C.数据链表存储 D.数据元素个数为偶数
6.以下说法错误的是( )
A.算法可以用自然语言描述 B.算法的实现必须用C#语言
C.流程图是算法的图形化表示 D.伪代码介于自然语言和程序语言之间
7.关于算法的确定性,描述正确的是( )
A.算法的步骤必须明确,无歧义 B.算法必须能在有限步完成
C.算法的输出必须唯一 D.算法可以处理所有输入
8.当数据基本有序时,( )排序效率最高。
A.冒泡排序 B.快速排序 C.插入排序 D.选择排序
9.以下控制结构不属于算法的基本控制结构的是( )
A.顺序结构 B.循环结构 C.递归结构 D.选择结构
10.算法的空间复杂度是指( )
A.算法代码的长度 B.算法运行时的内存占用
C.算法的输入数据量 D.算法的输出数据量
11.顺序查找适用于( )
A.有序数组 B.无序数组 C.链表 D.以上都可以
12.衡量算法优劣的核心标准是( )
A.代码行数少 B.时间和空间复杂度低
C.易于理解 D.运行时占用内存大
13.一个算法可以没有( )
A.输入 B.输出 C.确定性 D.有穷性
14.以下关于流程图的说法,正确的是( )
A.流程图中的椭圆表示数据流动 B.矩形框代表判断条件
C.菱形框代表处理步骤 D.流程图用于描述算法的步骤
15.算法的时间复杂度主要衡量( )
A.算法执行的实际时间 B.算法的可读性
C.算法执行的基本运算次数 D.算法的代码长度
16.对有序数组 [1,3,5,7,9,11] ,用二分查找法找 11 ,需要比较的次数是( )
A.1次 B.2次 C.3次 D.4次
17.以下排序算法中,属于不稳定排序的是( )
A.冒泡排序 B.插入排序 C.快速排序 D.归并排序
18.解决“求1到100的和”问题,最恰当的工作流程是( )
A.编写程序→设计算法→分析问题→运行程序
B.分析问题→设计算法→编写程序→运行程序
C.设计算法→分析问题→编写程序→运行程序
D.分析问题→编写程序→设计算法→运行程序
19.关于算法与程序的关系,正确的是( )
A.算法就是程序 B.程序是算法的具体实现
C.算法不需要依赖程序设计语言 D.程序的效率与算法无关
20.以下不属于算法基本特征的是( )
A.确定性 B.有穷性 C.二义性 D.可行性
二、填空题(本大题共8小题,每题5分,共40分)
21.算法可以没有输入,但是需要有____________输出。
22.算法设计的要求包括________、可读性、 稳健性 、高效率与低存储量的要求。
23.流程图中表示计算与赋值的符号是 _______________。
24.算法的描述方法可分为用自然语言描述算法、用 ___________ 描述算法和用N - S描述算法。
25.算法就是解决问题的 ___________ ,且步骤是有限的。
26.算法的输出是指算法结束后________的结果。
27.算法的输入是指算法开始前________的数据。
28._______通过不断将搜索的范围缩小一半来查找目标值,直到目标值被找到或确定目标值不在。
试卷第6页,共6页
试卷第5页,共6页
学科网(北京)股份有限公司
$