内容正文:
第 5 章
程序设计入门
程序设计就是将解决问题的方法步骤编写成计算机可执行的程序的过程ꎬ 该程序往往以某种程
序设计语言为工具编写ꎮ
在本章中ꎬ 我们需要:
1. 了解程序设计基础知识ꎬ 如指令和程序等概念ꎮ
2. 掌握常见的程序设计语言ꎬ 包括其种类和特点ꎮ
3. 掌握算法、 程序流程图和程序的基本结构ꎬ 算法的概念和特征ꎬ 不同程序结构的执行方式等ꎮ
4. 在理解程序设计语言基础知识的基础上ꎬ 能够根据具体问题设计简单程序ꎬ 如定义和调用函
数、 创建对象、 使用和安装模块等ꎮ
任务 1 了解程序设计理念
本节的基本任务是了解程序设计基础知识ꎮ
在根据具体问题设计程序之前ꎬ 我们需要了解程序设计基础知识ꎬ 包括常涉及的概念ꎬ 如指令、 程
序和程序设计ꎮ 程序设计往往以某种程序设计语言为工具ꎬ 因此了解程序设计语言基础知识、 运用计算
思维选择合适的程序结构等至关重要ꎮ
本任务的学习目标如下:
1. 了解指令、 程序的概念ꎬ 理解用程序解决问题的计算思维理念ꎮ
2. 掌握常见程序设计语言的种类和特点ꎮ
3. 掌握算法的概念和特征ꎬ 能根据具体问题正确分析和绘制程序流程图ꎮ
4. 理解和掌握程序的 3 个基本结构ꎮ
64
一、 单项选择题
1. ( ) 是解决某个问题所需的一系列指令序列的集合ꎮ
A. 算法 B. 思维 C. 程序 D. 软件
2. 计算思维让我们能够 ( )ꎮ
A. 运用所学知识和技能ꎬ 通过界定问题、 抽象特征、 建立模型和组织数据等ꎬ 将一个抽象的问题
转化成计算机等信息技术可以处理的形式
B. 通过判断、 分析和综合各种信息ꎬ 运用信息技术工具和信息资源ꎬ 设计算法形成解决问题的
方案
C. 总结信息技术应用的方法和技巧ꎬ 并迁移到与之类似的相关问题的解决过程中
D. 以上都对
3. 以下是一条指令的是 ( )ꎮ
A. 菜谱 B. 盲人指路 C. 计算 20 除以 4 D. App
4. 最开始的程序设计语言只有两个符号ꎬ 要么是 0ꎬ 要么是 1ꎬ 以下对这种语言说法错误的是 ( )ꎮ
A. 机器语言 B. 二进制语言
C. 高级语言 D. 低级语言
5. 由于用 0 和 1 的机器语言写出的程序可读性极差ꎬ 使得程序的编写和维护难度都很大ꎬ 所以人们
发明了 ( )ꎬ 利用特定的助记符来帮助程序员记忆机器指令ꎮ
A. 低级语言 B. 高级语言 C. 自然语言 D. 汇编语言
6. 以下不属于算法重要特征的是 ( )ꎮ
A. 无穷性 B. 确切性 C. 可行性 D. 输入项
65
7. 在流程图中ꎬ 用于获取用户输入或计算机输出操作的符号或图形是 ( )ꎮ
A. 处理框 B. 判断框
C. 输入输出框 D. 起止框
8. 以下是处理框的是 ( )ꎮ
A. B. C. D.
9. 根据判断结果从众多步骤中选择一个执行ꎬ 属于 ( ) 结构ꎮ
A. 顺序 B. 循环 C. 选择 D. 判断
二、 不定项选择题
1. 以下属于低级语言的是 ( )ꎮ
A. 计算机语言 B. 机器语言
C. 汇编语言 D. Java
2. 以下属于高级语言的是 ( )ꎮ
A. C++ B. Python C. 汇编语言 D. Java
3. 下列属于 Python 语言特点的是 ( )ꎮ
A. 明确 B. 可扩展性强 C. 简单 D. 不易维护
4. 下列关于 Python 语言的描述ꎬ 正确的是 ( )ꎮ
A. Python 语言语法清晰ꎬ 是不完全面向对象的语言
B. Python 语言拥有强大的标准模块以及第三方模块
C. Python 语言可轻松联结其他语言制作的模块
D. Python 语言具有汇编语言的特点ꎬ 因此也称为中级语言
5. 算法是求解问题的一系列计算步骤ꎬ 这些计算步骤可能是 ( )ꎮ
A. 顺序执行 B. 选择执行 C. 螺旋执行 D. 循环执行
6. 常见的程序结构包括 ( )ꎮ
A. 顺序结构 B. 选择结构 C. 判断结构 D. 循环结构
7. 程序流程图用统一规定的符号和图形来表示ꎬ 通常包括 ( )ꎮ
A. 处理框 B. 判断框 C. 起止框 D. 连接点
三、 填空题
1. 程序设计的 是程序设计的基础ꎮ
2. 是人们与计算机进行沟通的工具ꎮ
3. 根据人设定好的程序自动地完成一系列指令ꎬ 叫作 ꎮ
4. 程序是为实现特定目标的 编程指令序列的 ꎮ
5. 程序设计语言包括 和 ꎮ
6. 是以人们的日常语言为基础的一种编程语言ꎮ
7. 计算机具有 、 等特点ꎬ 运用计算机可以帮助我们更快更好地解决问题ꎮ
8. 运用信息技术解决问题的思想方法称为 ꎮ
9. 问题的表述方法可以用数学建模、 文字、 和 等形式ꎮ
10. 每次抛硬币ꎬ 落地后要么是正面ꎬ 要么是反面ꎮ 如果在计算机中ꎬ 我们用数字 “1” 代表正面ꎬ
用数字 “0” 代表反面ꎬ 那么这种表示状态的方法也可称为 “ ”ꎮ
11. 在程序设计中ꎬ 就是程序执行的流程ꎬ 是解决问题的步骤ꎮ
12. 算法的 性是指每个步骤都可以在有限时间内完成ꎮ
13. 是算法和数据结构的总和ꎮ
14. 算法有 个输入ꎮ
15. 是软件的核心ꎮ
16. 从上往下ꎬ 一步一步顺次往下执行的是 结构ꎮ
66
17. 下列程序是计算抛 100 次硬币得到正面的概率ꎬ 请按要求作答ꎮ
(1) 请在注释上填上相应注释的序号ꎮ
import random #导入 random 模块
up_n= 0 #记录抛出正面的次数
total_n= 100 #代表实验总次数
cnt= 0 #记录实验次数
while cnt<total_n: #
result= random. randint (0ꎬ 1) #
print( result) #
if result= = 1: #
up_n=up_n+1 #
cnt=cnt+1 #
p=up_n / total_n #
print ( '抛出正面的频率为:' +str(p)) #
①正面次数 up_n 增加 1 次ꎻ
②判断抛硬币实验次数 cnt 是否达到 100 次ꎻ
③输出 result 的值ꎻ
④输出抛出正面的频率ꎻ
⑤判断 result 是否等于 1ꎻ
⑥将 0 和 1 随机赋值给 resultꎻ
⑦计算抛出正面的频率ꎻ
⑧实验次数增加 1 次ꎮ
(2) 如果要求计算的是抛 200 次硬币得到正面的概率ꎬ 只需要将程序中的 “ total_n = 100” 更改
为 ꎮ
四、 判断题
1. 运用程序设计解决问题的过程和方法是一种逻辑思维理念ꎬ 不仅可以用在程序设计中ꎬ 也可以应
用到其他问题的解决中ꎮ ( )
2. 人们的学习、 工作和生活中处处都有程序的身影ꎮ ( )
3. 指令可以是一条语句或者代码ꎮ ( )
4. 程序是一条编程指令ꎮ ( )
5. 指挥盲人从起点至终点所发出的一系列指令序列可称为一个程序ꎮ ( )
6. 没有程序的计算机也可以实现一些基本功能ꎮ ( )
7. 任何一款软件的背后都离不开程序设计的过程ꎮ ( )
8. 程序设计语言是只有计算机可以理解的语言ꎮ ( )
9. 最开始的程序设计语言只有 0 和 1 两个符号ꎮ ( )
10. 机器语言和汇编语言都是直接面向机器的语言ꎮ ( )
11. 计算思维是一种运用信息技术解决问题的思维方式ꎬ 仅能体现在程序设计中ꎬ 无法帮助我们在学
习、 生活和工作中发现问题、 分析问题和解决问题ꎮ ( )
12. 将一个问题转换成计算机能处理的形式ꎬ 首先要建立起合适的模型ꎮ ( )
13. 将一个问题转换成计算机能够处理的形式的过程ꎬ 是对问题进行重新表述的过程ꎮ ( )
14. random 是 Python 程序设计语言中提供的一个随机数模块ꎮ ( )
15. 在很多时候ꎬ 问题分解都能帮助我们更好地找到解决问题的办法ꎮ ( )
16. 我们既可以使用自然语言描述算法ꎬ 也可以用流程图来描述算法ꎮ ( )
17. 算法是解决问题的步骤ꎮ ( )
67
18. 同一问题只有一种解决方案或算法ꎮ ( )
19. 程序流程图用统一规定的标准符号和图形表示ꎮ ( )
20. 程序流程图是整个程序的一张蓝图ꎬ 能够清晰直观地体现出程序的逻辑性和处理顺序ꎮ ( )
21. 在程序设计中ꎬ 总是按前后顺序执行每个步骤ꎮ ( )
22. 在选择结构和循环结构中也会有顺序结构ꎮ ( )
五、 简答题
1. 请简述 Java 语言的特点以及适用范围ꎮ
2. 请简述程序设计的概念ꎮ
3. 计算抛硬币抛出正面的概率的公式为: 抛出正面的概率=抛出正面的次数÷实验总次数ꎬ 现已知实
验总次数为 100 次ꎬ 则可将此求抛硬币抛出正面的概率的问题分为几个子问题ꎬ 为什么?
典型应用
例题 1 计算机实现打印文档的过程是一条指令ꎮ ( )
答案: ×
解析: 指令是给计算机下达的一个基本命令ꎬ 为实现特定目标的一条或多条编程指令序列的集合称
为程序ꎮ
例题 2 计算机能直接识别并运行的语言是 ꎮ
答案: 机器语言
解析: 程序设计语言包括低级语言和高级语言ꎬ 其中一种比较底层的语言称为机器语言ꎬ 这种语言
是直接面向机器的ꎬ 能够直接被计算机识别并运行ꎮ
程序设计语言分为机器语言、 汇编语言、 高级语言ꎮ
计算机只能识别机器语言ꎬ 汇编语言和高级语言若要被计算机执行ꎬ 必须转换成机器语言ꎮ 转
换方法如下ꎮ
(1) 汇编语言: 经过 “汇编” 程序汇编ꎬ 如图 5-1 所示ꎮ
图 5-1
(2) 高级语言ꎮ
方法一: 编译
编译是先将源程序翻译成目标程序ꎬ 经过链接后成为可执行程序ꎮ 一次编译ꎬ 多次运行ꎬ 执行
68
效率高ꎮ
方法二: 解释
解释是直接将源程序翻译成可执行程序ꎬ 边解释边运行ꎬ 解释完成即运行完毕ꎮ 如图 5-2 所示ꎮ
图 5-2
例题 3 下列属于 Python 语言适用范围的是 ( )ꎮ
A. 分布式系统 B. 嵌入式系统 C. 游戏开发 D. 编写操作系统
答案: C
解析: Python 拥有强大的标准模块和第三方模块ꎬ 能够快速开发出功能丰富的应用程序ꎬ 常见于游
戏开发的图形渲染ꎮ
Python 具有简单易学、 可扩展性强等特点ꎬ 常被应用于以下领域ꎮ
(1) Web 开发ꎮ Python 具有强大的数据处理能力ꎬ 是 Web 开发的主流语言ꎮ
(2) 科学计算ꎮ Python 中提供了支持高级科学计算的模块ꎮ
(3) 游戏开发ꎮ Python 拥有强大的标准模块和第三方模块ꎬ 可制作 3D 游戏ꎮ
(4) 多媒体应用ꎮ Python 中提供的模块可以处理图像、 声音、 视频、 动画等ꎮ
(5) 爬虫开发ꎮ Python 具有相对完善的数据分析和数据处理库ꎬ 可以为爬取网络数据提供很好
的技术支撑ꎮ
例题 4 编程思维是一种 ( )ꎮ
A. 思考方式 B. 思维过程 C. 算法 D. 解答方式
答案: A
解析: 所谓编程ꎬ 就是人们用简单的指令告诉计算机怎么做事ꎮ 而编程思维ꎬ 就是说你要学会用计
算机思考的方式来观察和理解世界ꎮ
编程思维 (Programming Thinking) 由以下四个模块组成ꎮ
(1) 分解 (Decomposition): 把一个复杂的大问题ꎬ 拆解成可执行、 好理解的小步骤ꎮ
(2) 模式识别 (Pattern Recognition): 根据经验找出相似模式ꎬ 以此解决细分问题ꎮ
(3) 抽象 (Abstraction): 聚焦较重要的信息ꎬ 忽视无用细节ꎮ 简单来说ꎬ 就是找出问题本质ꎬ
过滤掉其他无关紧要的因素ꎮ
(4) 算法 (Algorithm): 设计一步接一步的解决路径ꎬ 解决整个问题ꎮ
例题 5 编程思想是指使用计算机解决人们实际问题的思维方式ꎬ 具体表现为 ( )ꎮ
A. 过程性编程思想 B. 结构性编程思想 C. 对象性编程思想 D. 以上都对
答案: D
解析: 编程思想是指使用计算机解决人们实际问题的思维方式ꎬ 具体表现为过程性编程思想、 结构
性编程思想和对象性编程思想ꎮ
69
建立完整的编程思想体系是编写程序的重要基础ꎮ
过程性编程思想是一种以过程为中心的编程思想ꎮ 程序设计者按照计算机的工作原理ꎬ 以信息
流及信息转换的过程ꎬ 即 “输入→运算→输出”ꎬ 设计程序ꎮ 早期的计算机编程是基于面向过程的
方法ꎮ
面向结构编程是一种自顶向下、 逐步求精的编程思想ꎮ 程序设计者需要把问题按功能划分成若
干个基本模块ꎬ 各模块之间的关系尽可能简单ꎬ 功能上相对独立ꎮ
对象性编程思想是将事物对象化ꎬ 以对象为单位考虑它的属性及方法ꎮ 程序设计者编程时ꎬ 先
分析问题的本质ꎬ 抽象出所有对象ꎬ 明确每个对象要完成的任务ꎬ 最终将解决问题的所有对象组合
起来ꎬ 更符合现实问题的求解思路ꎮ
例题 6 甲今天要做啤酒焖鸭ꎬ 发现没有买啤酒ꎬ 饭也还没煮上ꎮ 煮饭预计需要 50 分钟ꎬ 处理鸭
子预计需要 10 分钟ꎬ 买啤酒预计需要 10 分钟ꎬ 焖鸭子预计需要 30 分钟ꎮ 为了节约时间ꎬ 甲应该如何安
排事件顺序 ( )ꎮ
A. 处理鸭子→煮饭→买啤酒→焖鸭子 B. 买啤酒→煮饭→处理鸭子→焖鸭子
C. 处理鸭子→买啤酒→焖鸭子→煮饭 D. 煮饭→买啤酒→处理鸭子→焖鸭子
答案: D
解析: 计算思维不仅能体现在程序设计中ꎬ 也能帮助我们在学习、 生活和工作中发现问题、 分析问
题和解决问题ꎮ 在此事件中ꎬ 煮饭时间最长ꎬ 应先进行ꎬ 其他事项在其后进行ꎮ
图 5-3
例题 7 某程序流程图如图 5-3 所示ꎬ 当程序执行结束后ꎬ 输出 n 的值为 ( )ꎮ
A. 1 B. 2 C. 3 D. 4
答案: D
解析: 根据流程图可以明确运行步骤和顺序ꎮ 从程序开始出发ꎬ 根据流程线依次执
行 s= 2ꎬ n= 1 的赋值操作和 s= 1 / (1-s)ꎬ 将 s = 2ꎬ n = 1 代入得 s = -1ꎬ n = 2ꎬ 判断 s =
-1不等于 2ꎬ 往左侧流程线方向执行ꎮ 重复上述流程ꎬ 直至 s=2 时结束操作ꎬ 输出 n=4ꎮ
知识精练
一、 单项选择题
1. 任何复杂的运算都可以分解为一系列简单的操作步骤ꎬ 这些简单操作步骤能被计
算机直接实现ꎬ 我们称为 ( )ꎮ
A. 指令 B. 程序 C. 软件 D. 系统
2. 以下说法中ꎬ 错误的是 ( )ꎮ
A. “自动化” 常见于计算机软件或 App 中
B. 会议活动流程是一条指令
C. 运行程序时ꎬ 程序中的指令会被连续自动执行
D. 程序设计可以让计算机按设计的步骤一步步解决任务
3. 解释程序的功能是 ( )ꎮ
A. 将高级语言程序转换为目标程序 B. 将汇编语言程序转换为目标程序
C. 解释执行高级语言程序 D. 解释执行汇编语言程序
4. 计算机能直接执行的语言是 ( )ꎮ
A. 机器语言 B. 汇编语言 C. 高级语言 D. 低级语言
5. 甲向乙发送一封电子邮件ꎬ 以下流程正确的是 ( )ꎮ
①甲发送邮件ꎻ ②甲方服务器将甲的邮件发送给乙方服务器ꎻ ③甲登录自己的电子邮箱ꎻ ④甲方
70
服务器分析乙的地址ꎻ ⑤乙方服务器分析出乙的账号ꎻ ⑥乙方服务器通知乙有新的邮件ꎻ ⑦甲方
服务器接收到甲的请求ꎻ ⑧乙方服务器接收到甲的邮件
A. ①④②③⑧⑤⑦⑥ B. ③①⑦④②⑧⑤⑥
C. ③⑦②⑧①⑤④⑥ D. ①②⑦⑤④⑧③⑥
6. 下列属于二进制语言特点的是 ( )ꎮ
A. 可读性高 B. 不易扩展 C. 简洁 D. 易于维护
7. 计算机在执行高级语言程序时ꎬ 将高级语言翻译成目标程序的是 ( )ꎮ
A. 高级程序 B. 解释程序 C. 编译程序 D. 汇编程序
8. Python 语言属于 ( )ꎮ
A. 低级语言 B. 高级语言 C. 机器语言 D. 汇编语言
9. 使用二进制语言编程时ꎬ 程序代码是 ( )ꎮ
A. 二进制 B. 四进制 C. 八进制 D. 十六进制
10. 结构化程序的三种基本控制结构是 ( )ꎮ
A. 顺序、 选择和重复 (循环) B. 过程、 子程序和分程序
C. 顺序、 选择和调用 D. 调用、 返回和转移
11. 在植物大战僵尸的游戏中ꎬ 植物发出的炮弹对于僵尸而言不是一击而亡的ꎬ 而是要不断地砸中僵
尸ꎬ 直到僵尸死亡ꎬ 其算法可以按照如下方法进行描述ꎬ 这采用了 ( ) 结构的程序设计ꎮ
(1) 设定植物的炮弹威力值为 5 和僵尸的生命强度值为 40ꎮ
(2) 植物每隔 1 秒发射一颗炮弹ꎬ 僵尸的生命强度值减 5ꎮ
(3) 重复执行步骤 (2)ꎬ 直到僵尸的生命强度值为 0ꎮ
A. 顺序 B. 选择
C. 循环 D. 数据
二、 不定项选择题
1. 下列选项中属于算法特征的是 ( )ꎮ
A. 确定性 B. 有穷性 C. 输入项 D. 可行性
2. 下列选项中属于计算机程序设计语言分类的是 ( )ꎮ
A. 二进制语言 B. 汇编语言
C. 高级语言 D. 自然语言
3. 以下属于高级语言的是 ( )ꎮ
A. Java B. Python C. 汇编语言 D. VB
4. 下列关于 Python 说法正确的是 ( )ꎮ
A. Python 具有丰富的第三方库 B. Python 能够把其他语言制作的模块轻松联结起来
C. Python 只能在 Windows 操作系统下运行 D. Python 广泛应用于人工智能领域
图 5-4
三、 填空题
1. 就是一种计算机能够识别和执行的指令或语句序列ꎮ
2. 计算机语言发展大致经历了机器语言、 汇编语言和 阶段ꎮ
3. 汇编语言是符号化的机器语言ꎬ 采用 代替 0 和 1ꎬ 比机器语言容易识别
和记忆ꎮ
4. 语言面向过程或对象ꎬ 近似于自然语言ꎮ
5. 结构并不是从上到下顺序执行ꎬ 而是每一次都要先判断是否符合继续执
行某个功能的条件ꎬ 若符合则继续执行该功能ꎬ 否则执行下一个功能ꎮ
6. 某程序流程图如图 5-4 所示ꎬ 当程序执行结束后ꎬ 输出的结果是 ꎮ
四、 判断题
1. 高级语言能够直接表达运算操作和逻辑关系ꎮ ( )
71
2. 用程序解决问题的第一步是要将抽象问题转化成计算机能处理的形式ꎮ ( )
3. 汇编语言是面向机器的语言ꎬ 计算机可以直接识别并运行ꎬ 不需要经过转换ꎮ ( )
4. 二进制语言属于低级语言ꎮ ( )
5. 设计的算法一定包含有输入部分ꎮ ( )
6. 计算机编程的核心是编写代码ꎮ ( )
7. 高级语言更接近于自然语言ꎬ 用十进制数和表达式表示ꎮ ( )
8. 在程序流程图中ꎬ 使用方框来表示输入输出操作ꎮ ( )
9. 一个算法至少需要一个输入项ꎮ ( )
五、 技能操作题
请根据图 5-5 所示的流程图ꎬ 用自然语言描述泡面的过程ꎮ
图 5-5
基础练习
一、 单项选择题
1. 由人根据一定的需要事先编写的一系列的控制计算机工作的命令是 ( )ꎮ
A. 指令 B. 法则 C. 语句 D. 程序
2. 汇编程序的任务是 ( )ꎮ
A. 将高级语言编写的程序转换为可执行程序
B. 将汇编语言编写的程序转换为可执行程序
C. 将高级语言编写的程序转换为汇编语言程序
D. 将汇编语言编写的程序转换为目标程序
3. Java 语言的类别是 ( )ꎮ
A. 面向问题的程序设计语言 B. 面向对象的程序设计语言
C. 面向硬件的程序设计语言 D. 面向过程的程序设计语言
4. 下列四句话中ꎬ 最准确的表述是 ( )ꎮ
A. 程序 =算法+数据结构 B. 程序是使用编程语言实现算法
C. 程序的开发方法决定算法设计 D. 算法是程序设计中最关键的因素
72
5. 下列关于算法的描述ꎬ 正确的是 ( )ꎮ
A. 算法的表述只能是文字、 图形 B. 一个算法必须在有限个步骤内完成
C. 算法可以有 0 个输出 D. 一个算法至少有 1 个输入
图 5-6
6. 繁华的都市ꎬ 即便是夜晚也灯火辉煌ꎬ 闪动的霓虹灯为城市增添了几分美丽ꎮ
简单的霓虹灯程序可以设计如下ꎬ 这种算法采用了 ( ) 描述方法ꎮ
(1) 初始化灯光颜色为红色ꎮ
(2) 一秒钟后灯光颜色切换为绿色ꎮ
(3) 一秒钟后灯光颜色切换为蓝色ꎮ
(4) 重复执行步骤 (1)、 (2)、 (3)ꎬ 直到 8 小时后ꎮ
A. 自然语言 B. 流程图
C. 结构图 D. 伪代码
7. 在图 5-6 所示的流程图中ꎬ 虚线框处所使用的流程图符号是 ( )ꎮ
A. B.
C. D.
8. 根据算法的特性ꎬ 下列不适合用算法来解决的是 ( )ꎮ
A. 判断一个大于或等于 3 的正整数是不是一个素数
B. 输出 3ꎬ 8ꎬ 19 这三个数中的最大值
C. 计算 1+2+3++nꎬ n 取无穷大
D. 计算 1+2+3++100 的和
9. 根据如图 5-7 所示的算法流程图ꎬ 可判断出六边形有 ( ) 条对角线ꎮ
A. 9 B. 6 C. 5 D. 8
10. 工厂在进行产品次品检测时ꎬ 有时可以根据重量来判断是否是次品ꎬ 图 5-8 所示流程图采用的是
( )ꎮ
A. 顺序结构 B. 选择结构
C. 循环结构 D. 数据结构
图 5-7
图 5-8
二、 不定项选择题
1. 下列关于算法的描述ꎬ 正确的有 ( )ꎮ
A. 算法必须能在执行有限个步骤后终止
B. 算法的每一个步骤必须有确切的定义
C. 一个算法至少要有一个输入项
D. 算法只能有一个输出项
2. 算法有五个特点ꎬ 下列选项中属于算法特点的是 ( )ꎮ
A. 简洁性 B. 有穷性
C. 确切性 D. 可行性
73
3. 算法的表示方法包括 ( )ꎮ
A. 自然语言 B. 伪代码 C. 程序流程图 D. 图表
4. 下列选项中ꎬ 属于 Python 语言适用范围的是 ( )ꎮ
A. Web 开发 B. 科学计算 C. 游戏开发 D. 爬虫开发
5. 关于 C 语言的说法ꎬ 错误的是 ( )ꎮ
A. C 语言是在 C++的基础上开发的一门语言
B. C 语言可以直接访问物理地址ꎬ 直接对硬件进行操作
C. C 语言可以进行面向对象的程序设计
图 5-9
D. C 语言不具备汇编语言的一些特点
三、 填空题
1. 就是程序执行的流程ꎮ
2. 高级语言可以通过 和 的方式转换成机器语言ꎮ
3. 汇编语言利用特定的 来帮助程序员记忆机器指令ꎮ
4. 独立于计算机ꎬ 面向过程或对象的程序设计语言是 语言ꎮ
5. 程序流程图中表示判断的图形符号是 ꎮ
6. 某程序流程图如图 5-9 所示ꎬ 该程序执行结束后ꎬ 输出的 k 值为 ꎮ
四、 判断题
1. 指令是程序的集合ꎮ ( )
2. 我们可以通过编码、 程序语句和逻辑表达式ꎬ 将需要解决的问题用一种计算机能够处理的形式重
新表述ꎮ ( )
3. 在程序设计中ꎬ 问题解决的方法步骤可以是粗略的描述ꎮ ( )
4. 高级语言编写的程序比较直观、 易懂ꎬ 而且计算机能够直接识别ꎬ 可以直接执行ꎮ ( )
5. 汇编语言是唯一面向机器的语言ꎮ ( )
6. 通俗地讲ꎬ 算法就是解决问题的方法和步骤ꎮ ( )
7. 算法可以用自然语言和流程图描述ꎮ ( )
8. 用数字表示两种不同状态的方法称为 “编码”ꎮ ( )
9. 一个算法至少需要一个输出项ꎮ ( )
五、 简答题
1. 请简述指令、 程序和程序设计的概念ꎬ 并说明指令和程序的关系ꎮ
2. 请列举 3 个常见的高级语言及其适用范围ꎮ
六、 技能操作题
请用程序流程图表示 “计算 1~100 所有整数的和”ꎮ
试题精讲
74
提升练习
一、 单项选择题
1. 世界上最早出现的高级语言是 ( )ꎮ
A. Delphi B. Pascal
C. FORTRAN D. C 语言
2. 编程思维可以划分为计算思维、 数学思维、 逻辑思维和 ( ) 等四个维度ꎮ
A. 形象思维 B. 动作思维
C. 系统思维 D. 创造性思维
二、 填空题
编程思想体现为过程性编程思想、 结构性编程思想和 编程思想ꎮ
任务 2 设计简单程序
本节的基本任务是设计简单程序ꎮ
设计程序是将解决问题的方案付诸实践的过程ꎮ 程序设计语言是我们与计算机之间进行沟通的重要
工具ꎬ 因此ꎬ 了解程序设计语言的基础知识是需要迈出的第一步ꎮ 在学习编程基础知识的过程中ꎬ 了解
设计思路ꎬ 掌握基本操作与语法ꎬ 从而利用编程解决实际问题ꎮ
综上所述ꎬ 本任务的学习目标如下:
1. 了解程序设计语言的基础知识ꎮ
2. 掌握编辑、 运行和调试程序的方法ꎮ
3. 了解典型算法和功能库的使用方法ꎮ
同步辅导参考答案 185
二、不定项选择题
01*
三、判断题
$) √ &) √
第
9
章 程序设计入门
任务
$
了解程序设计理念
【教材导学】
一、单项选择题
$) *
&) 8
') *
5) *
9) 8
%) 0
() *
:) 8
;) *
二、不定项选择题
$) 1*
&) 018
') 01*
5) 1*
9) 018
%) 018
() 01*8
三、填空题
$)
理念
&)
程序设计语言
')
自动化
5)
一条或多条 集合
9)
低级语言 高级语言
%)
高级语言
()
运算速度快 存储容量大
:)
计算思维
;)
表格 图形
$7)
编码
$$)
算法
$&)
有穷
$')
程序
$5) 7
个或多
$9)
算法
$%)
顺序
$()
(
$
)②⑥③⑤①⑧⑦④ (&) +X+2-[C<&77
四、判断题
$) √ &) √ ') √ 5) × 9) √ %) × () √ :) × ;) √ $7) √ $$) × $&) × $') √ $5) √
$9) √ $%) √ $() √ $:) × $;) √ &7) √ &$) × &&) √
五、简答题
$) T2\2
语言特点
! T2\2
语言是面向对象的编程语言,功能强大,简单易用。适用范围
!
可用于编写桌面
应用程序、
]B3
应用程序、分布式系统和嵌入式系统应用程序等。
&)
程序设计是将问题解决的方法步骤编写成计算机可执行的程序的过程。
')
可以划分为 “计算抛出正面的概率”和 “计算抛出正面的次数”两个子问题。因为所求的最终问题就
是 “计算抛出正面的概率”,故此为子问题
$
。根据题目所示公式可知,要求出抛出正面的概率,就需
要知道 “抛出正面的次数”和 “实验总次数”,由于实验总次数已知,所以 “计算抛出正面的次数”
就是子问题
&
。
【知识精练】
一、单项选择题
$) 0
&) 1
') *
5) 0
9) 1
%) 1
() *
:) 1
;) 0
$7) 0
$$) *
二、不定项选择题
$) 01*8
&) 01*
') 018
5) 018
三、填空题
$)
程序
&)
高级语言
')
助记符
5)
高级
9)
循环
%) &5
四、判断题
$) √ &) √ ') × 5) √ 9) √ %) × () √ :) × ;) ×
五、技能操作题
开始泡面,先打开包装,检查里面的东西是否完整,不完整则泡不了,结束泡面操作。如果完整,则倒
入调料包,再加入开水,之后等待,不足
9
分钟继续等待,满
9
分钟则可以吃泡面了,任务完成,结束
泡面操作。
【基础练习】
一、单项选择题
$) 8
&) 8
') 1
5) 0
9) 1
%) 0
() 1
:) *
;) 0
$7) 1
二、不定项选择题
$) 01
&) 1*8
') 01*
5) 01*8
9) 0*8
186 信息技术同步辅导与测评·
!"#$%&'
D
三、填空题
$)
算法
&)
编译 解释
')
助记符
5)
高级
9)
菱形图
%) '
四、判断题
$)
×
&) √ ') × 5) × 9) × %) √ () √ :) √ ;) √
五、简答题
$)
指令是给计算机下达的一个基本命令,它是一条语句或代码。程序是为实现特定目标的一条或多条编
程指令序列的集合。程序设计是将问题解决的方法步骤编写成计算机可执行的程序的过程。
指令和程序的关系
!
程序是指令的集合。
&) ①T2\2语言! 可用于编写桌面应用程序、]B3应用程序、分布式系统和嵌入式系统应用程序等。
② *语言! 可用于编写应用软件、操作系统和编译程序。
③ VZ+WXC语言! 适用于游戏开发、]B3开发、科学计算等。
六、技能操作题
【提升练习】
一、单项选择题
$) *
&) *
二、填空题
对象性
任务
&
设计简单程序
【教材导学】
一、单项选择题
$) *
&) 0
') 8
5) 0
9) 1
%) 0
() *
:) 0
;) 1
$7) 1
$$) *
$&) 8
$') 1
$5) 8
$9) 1
$%) 1
二、不定项选择题
$) 01*8
&) 08
') 01*8
5) 01*
9) 01
%) 1*8
() 0*8
:) 01*8
;) 018
$7) 1*
三、填空题
$) N8S# &)
交互式
LWB--
编辑器
') N8S#
5) 6Y-B
OB^ 6Y-B 9) #C+B, %) 69 () 5
$
:) VZ+WXC
可执行
;) $ $7) &
7
&
9 $$) &
9
&
$&) "
helo2023
"
13.= 14.变量 15.变量名
16.函数 17.内置函数 自定义函数 18.def
19., 20.随机整数 21.import 22.计数循环
23.for while 24.class 25.枚举 26.二分查找
27.pip 28.import 29.pyplot
30.figure() title() bar() show()
四、判断题
1.× 2.× 3.√ 4.√ 5.× 6.√ 7.× 8.√ 9.√ 10.× 11.√ 12.× 13.√ 14.√