内容正文:
循环结构
1、 单项选择题
1、在Python中,for循环主要用于( )
A. 遍历字符串、列表等序列类型,逐个获取元素
B. 按条件选择执行
C. 判断布尔值
D. 定义函数
【答案】A
【解析】在Python中for循环常用于遍历字符串、列表、元组、字典、集合等序列类型,逐个获取序列中的各个元素。
2.Python中for循环语句末尾必须添加的符号是( )
A. 分号;
B. 逗号,
C. 冒号:
D. 句号。
【答案】C
【解析】每条for语句后需要一个冒号":",表示紧跟着的是执行循环的语句块。
3.Python中range(0, 4)生成的整数序列不包含的数字是( )
A. 0
B. 1
C. 3
D. 4
【答案】D
【解析】range(start, stop)计数到stop结束,但并不包括stop。range(0, 4)包含数字[0, 1, 2, 3],没有4。
4.range(2, 10, 2)生成的序列是( )
A. [2, 3, 4, 5, 6, 7, 8, 9]
B. [2, 4, 6, 8]
C. [2, 4, 6, 8, 10]
D. [0, 2, 4, 6, 8]
【答案】B
【解析】range(start, stop, step)中start=2,stop=10(不包含),step=2,因此生成2、4、6、8。
5.Python中while循环的执行特点是( )
A. 判断条件为True时执行语句块,条件为False时退出循环
B. 先执行语句块,再判断条件
C. 固定执行指定次数后自动结束
D. 只能遍历序列元素
【答案】A
【解析】while循环执行顺序为:判断条件为True,执行语句块,条件为False时退出循环,可执行else子句的语句块。
6.在循环结构中,break语句的作用是( )
A. 跳出本次循环,继续下一轮循环
B. 不做任何操作,保持结构完整
C. 跳出本层循环,终止循环语句
D. 结束整个程序
【答案】C
【解析】break语句用于跳出本层循环,在循环条件不为False或者序列还没循环完的情况下,也会终止循环语句。若在嵌套循环中,break语句只跳出本层循环。
7.在循环结构中,continue语句的作用是( )
A. 跳出本层循环
B. 输出空行
C. 暂停程序运行
D. 跳出本次循环,continue后的剩余语句跳过,继续下一轮循环
【答案】D
【解析】continue语句用于跳出本次循环,continue后的剩余语句都将跳过,继续进行下一轮循环。
8.Python中pass语句的作用是( )
A. 跳出循环
B. 空语句,不做任何操作,保持程序结构完整性
C. 跳过本次循环
D. 输出一个空格
【答案】B
【解析】pass是空语句,不做任何操作,纯粹为了保持程序结构的完整性。
9.下列关于循环嵌套的说法,正确的是( )
A. for循环内不能嵌套while循环
B. while循环内不能嵌套for循环
C. 循环嵌套最多只能两层
D. 一个循环体内嵌入另一个循环体称为循环嵌套
【答案】D
【解析】一个循环体里面嵌入另一个循环体时,称为"循环嵌套"。可以在while循环中嵌入for循环,也可以在for循环中嵌入while循环。
10.使用random模块生成指定范围内随机整数的函数是( )
A. random.randint(x, y)
B. random.random()
C. random.choice()
D. random.seed()
【答案】A
【解析】random模块下的randint()函数用于生成随机整数,语法格式为random.randint(x, y),x和y表示生成随机数的区间范围。
二、简答题
1.简述Python中for循环的适用场景和语法特点。
【答案】for循环常用于遍历字符串、列表、元组、字典、集合等序列类型,逐个获取序列中的各个元素。迭代变量用于存放从序列中逐个取出的元素,一般不会在循环中对迭代变量手动赋值。每条for语句后需要一个冒号":",表示紧跟着的是执行循环的语句块。在for循环中可用内置函数range()生成一个整数序列。
2.分别说明range()函数中三个参数start、stop、step的含义。
【答案】start:计数从start开始,默认是从0开始,如range(4)等价于range(0, 4);stop:计数到stop结束,但并不包括stop,如range(0, 4)包含数字[0, 1, 2, 3],没有4;step:步长,默认为1,如range(0, 4)等价于range(0, 4, 1)。
3.简述while循环的执行流程以及适用场景。
【答案】while循环执行顺序为:先判断条件,条件为True时执行循环体语句块,条件为False时退出循环,可执行else子句的语句块(else子句可省略)。while循环适用于循环次数不确定的情况,只要条件满足就一直循环,直到条件不满足为止;而for循环更适合循环次数已知、需要遍历序列的场景。
4.简述break语句和continue语句的区别。
【答案】break语句用于跳出本层循环,在循环条件不为False或者序列还没循环完的情况下,也会直接终止整个循环语句,循环不再继续。continue语句用于跳出本次循环,continue后的剩余语句都将跳过,但不会终止整个循环,而是继续进行下一轮循环。若在嵌套循环中,break语句只跳出本层循环。
5.什么是循环嵌套?以打印九九乘法表为例说明双重循环的作用。
【答案】一个循环体里面嵌入另一个循环体时,称为"循环嵌套"。外层循环和内层循环可以是for或while。以九九乘法表为例:总共有9行,第n行有n个表达式,因此用外层循环控制行数(共9行),内层循环控制列数(第i行有i个表达式),内层列的个数根据外层的行数来控制,通过双重循环实现行列的控制输出。
6.简述冒泡排序算法的基本思想。
【答案】冒泡排序的基本思想是,将需要排序的元素看作是一个个"气泡",最小(或最大)的"气泡"最快浮出水面,排在前面;较小(或较大)的"气泡"排在第二个位置,以此类推。如果数组中共有n个元素,需要进行n-1次遍历,第1次遍历进行n-1次比较,第2次遍历进行n-2次比较,以此类推,第n-1次遍历进行1次比较。每次比较相邻两个元素,若顺序错误则交换位置。
三、材料题
1.使用for循环语句计算自然数1至100的累加和,并输出结果。
【答案】参考代码:
sum = 0
for i in range(1, 101):
sum = sum + i
print("1至100的累加和为:", sum)
解析:定义累加变量sum初始为0,使用range(1, 101)生成1到100的整数序列(包含100),for循环依次取出每个数累加到sum中,循环结束后输出结果,结果为5050。
2.使用while循环实现猜数字游戏:程序随机生成一个1-100之间的整数,用户反复输入数字猜测,直到猜中为止,每次猜测给出"大了"或"小了"的提示。
【答案】参考代码:
import random
num = random.randint(1, 100)
while True:
guess = eval(input("请输入你猜的数字:"))
if guess == num:
print("恭喜你,猜对了!")
break
elif guess > num:
print("大了")
else:
print("小了")
解析:由于未确定循环次数,选用while循环,条件设为True表示无限循环。使用random.randint()生成随机数,每次接收用户输入并与答案比较,猜中时使用break跳出循环,否则给出大小提示继续猜测。
3.使用for循环嵌套打印由9行星号"*"组成的正立直角三角形,第1行1个星号,第2行2个星号,……,第9行9个星号。
【答案】参考代码:
for i in range(1, 10):
for j in range(1, i + 1):
print("* ", end="")
print()
解析:三角形行数由外层for循环生成(共9行),每行星号"*"的个数由内层for循环生成,第i行有i个星号,因此内层循环range(1, i+1)。内层print使用end=""不换行,每行结束后用print()输出换行。
4.编写程序:输出1~100之间不能被7整除的整数,要求每行输出10个数字。
【答案】参考代码:
count = 0
for i in range(1, 101):
if i % 7 == 0:
continue
print(str(i), end=" ")
count = count + 1
if count % 10 == 0:
print()
解析:明确循环次数选用for循环,使用range(1, 101)生成1到100的序列。用取模%运算判断是否能被7整除,若能整除则使用continue跳过本次循环不输出;不能整除则输出该数字。用count计数,每输出10个数字换行一次。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$
循环结构
1、 单项选择题
1、在Python中,for循环主要用于( )
A. 遍历字符串、列表等序列类型,逐个获取元素
B. 按条件选择执行
C. 判断布尔值
D. 定义函数
2.Python中for循环语句末尾必须添加的符号是( )
A. 分号;
B. 逗号,
C. 冒号:
D. 句号。
3.Python中range(0, 4)生成的整数序列不包含的数字是( )
A. 0
B. 1
C. 3
D. 4
4.range(2, 10, 2)生成的序列是( )
A. [2, 3, 4, 5, 6, 7, 8, 9]
B. [2, 4, 6, 8]
C. [2, 4, 6, 8, 10]
D. [0, 2, 4, 6, 8]
5.Python中while循环的执行特点是( )
A. 判断条件为True时执行语句块,条件为False时退出循环
B. 先执行语句块,再判断条件
C. 固定执行指定次数后自动结束
D. 只能遍历序列元素
6.在循环结构中,break语句的作用是( )
A. 跳出本次循环,继续下一轮循环
B. 不做任何操作,保持结构完整
C. 跳出本层循环,终止循环语句
D. 结束整个程序
7.在循环结构中,continue语句的作用是( )
A. 跳出本层循环
B. 输出空行
C. 暂停程序运行
D. 跳出本次循环,continue后的剩余语句跳过,继续下一轮循环
8.Python中pass语句的作用是( )
A. 跳出循环
B. 空语句,不做任何操作,保持程序结构完整性
C. 跳过本次循环
D. 输出一个空格
9.下列关于循环嵌套的说法,正确的是( )
A. for循环内不能嵌套while循环
B. while循环内不能嵌套for循环
C. 循环嵌套最多只能两层
D. 一个循环体内嵌入另一个循环体称为循环嵌套
10.使用random模块生成指定范围内随机整数的函数是( )
A. random.randint(x, y)
B. random.random()
C. random.choice()
D. random.seed()
二、简答题
1.简述Python中for循环的适用场景和语法特点。
2.分别说明range()函数中三个参数start、stop、step的含义。
3.简述while循环的执行流程以及适用场景。
4.简述break语句和continue语句的区别。
5.什么是循环嵌套?以打印九九乘法表为例说明双重循环的作用。
6.简述冒泡排序算法的基本思想。
三、材料题
1.使用for循环语句计算自然数1至100的累加和,并输出结果。
2.使用while循环实现猜数字游戏:程序随机生成一个1-100之间的整数,用户反复输入数字猜测,直到猜中为止,每次猜测给出"大了"或"小了"的提示。
3.使用for循环嵌套打印由9行星号"*"组成的正立直角三角形,第1行1个星号,第2行2个星号,……,第9行9个星号。
4.编写程序:输出1~100之间不能被7整除的整数,要求每行输出10个数字。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$