Python 课课练 (四):流程控制语句课后练习题


练习前置知识

  1. Chapter One : 开启 Python 之旅
  2. Chapter Two : Python 语言基础、运算符与表达式、程序的控制结构合集

一、流程控制语句课后练习题

(1) “上清华”还是“上北大”?这个问题可把小时候的我难为坏了!如果将这个问题写成 Python 代码,可以用以下哪个语句?()
A. for 循环语句
B. while 循环语句
C. switch 语句
D. if…else 语句

(2) 在 if…else 语句中,下列哪项作为 if 的表达式,会执行 else 语句?()
A. None
B. 0
C. 空字符串
D. 以上都是

(3) 使用 if…else 语句时,出现多个 if 语句和 else 语句时,else 语句将会根据()确定该 else 语句属于哪个 if 语句。
A. 冒号
B. 缩进
C. 离哪个 if 语句最近
D. 具体情况具体分析,无特定依据

(4) 在 if 语句中,出现哪项错误会弹出如下所示提示框。()
在这里插入图片描述
A. 代码缩进量错误
B. 条件表达式中少半个引号
C. if 语句后面未加冒号
D. 以上错误都可能

(5) 下列有关 break 语句与 continue 语句说法不正确的是?()
A. 当多个循环语句彼此嵌套时,break 语句只适用于所在层的循环。
B. continue 语句类似于 break 语句,也必须在 for、while 循环中使用。
C. continue 语句结束循环,继续执行循环语句的后继语句。
D. break 语句结束循环,继续执行循环语句的后继语句。

(6) 下列关于 pass 语句说法不正确的是()?
A. pass 语句表示空语句
B. pass 一般被用为占位符,作用是保持程序结构的完整性
C. 和注释一样,解释器会忽略 pass 语句
D. 执行 pass 语句时,什么都不会发生

(7) 下列关于 if 语句的说法正确的是()?
A. if…elif…else 语句中的 elif 和 else 都需要判断表达式的真假。
B. 由于 if 选择语句有多种嵌套方式,所以不同级别代码块的缩进量没有严格的要求。
C. else 一定不可以单独使用,它必须和保留字 if 一起使用。
D. 当 if 语句多于 else 语句时,可以根据 else 语句的缩进量来判断是属于哪一个if…else…语句中的。

(8) 哪个选项可以与保留字for一起循环遍历字符串()?
A. until
B. in
C. if
D. with

(9) 若想输出 100 以内所有的偶数,_____处应填入()。

01 for i in range(__________):
02   print(i)

A. 2,100
B. 0,2,100
C. 0,100,2
D. 2,100,0

(10) 判断下列代码的输出结果为()?

for i in range(10):
    if i % 3 == 0:
        continue
    print(i, end="")
    if i > 8:
        break
else:
    print("循环结束")

A. 1 2 4 5 7 8
B. 1 2 4 5 6 7 8
C. 0 1 2 4 5 6 7 8
D. 1 2

(11) 奇思今年8岁了,妙想今年10岁了,小琦写了一个语句比较奇思和妙想的年龄,看看输出结果是多少吧?()
在这里插入图片描述
A. x
B. y
C. 10
D. 8

(12) 学 Python,告别“不浪漫罪名”!女朋友想要星星,小明就给她星星,女朋友收到后非常满意。下列哪项是小明写的正确的代码()。

A:
number = int(input("How many stars do you want?"))
for i in range(1, number):
    print('*', end=' ')

B:
number = int(input("How many stars do you want?"))
for i in range(number):
    print('*', end=' ')

C:
number = int(input("How many stars do you want?"))
for i in range(number):
print('*', end=' ')

D:
number = int(input("How many stars do you want?"))
for i in range(1, number):
print('*', end=' ')

(13) 阅读下面的代码,输出结果是()?

for i in range(1, 15, 5):
    print(i, end="")

A. 1515
B. 1234
C. 1611
D. 0

(14) 运行下面这段代码,会输出什么呢?()
在这里插入图片描述A. 1
B. 100
C. 99
D. 199

(15) 哪个选项不符合下列空白处的语法要求()。

for var in ______:
    print(var)

A. range(0,10)
B. {1;2;3;4;5}
C. “Hello”
D. (1,2,3)

(16) 学校现有一个出国深造的名额,优秀的小明得知此事,立马报了名。但只有综合平均成绩不低于92分(满分100分)的应届毕业生才有机会参加面试,已知包括小明在内共有5人报名,想要算出有几个人有参加面试的资格,小明写了如下代码,请问是否有误?()
在这里插入图片描述A. 没有错误
B. 有1处错误,第3行应改为 if i < 6
C. 有2处错误第3行应改为 while i <5: 第9行 i +=1 的缩进量应与第6行 if 的缩进量相同
D. 有3处错误,包括选项C 中的错误和第11行 print 语句的缩进量应与第6行if 语句的缩进量相同

(17) 小明写了一组代码,输入成绩:如果成绩等于100,输出“满分优秀,”如果大于等于90,输出“优秀”,如果大于等于70,输出“良好”,如果大于等于60,输出“及格”,否则输出“不及格”输入其他则提示输入有误,帮他看看哪里错了吧?()
在这里插入图片描述
A. 5行 if b==100 改成 if b=100
B. 11行 b=int(a) 改成 b=int a
C. 没有错误
D. 第七行 break 改成 continue

(18) 小琦最近在学 Python,他写了一组代码,想要输出10行10列的*,帮他看看有什么错误吧?
在这里插入图片描述
A. 1行10改成11
B. 2行11改成10
C. 2行 range 改成 random
D. 正确,可以输出

(19) 小明最近迷上了 Python,他写了一段代码,输出我要好好学习,如果输入 y 则继续,否则退出,看看他写的对吗?()
在这里插入图片描述
A. 1 行改成 tag=y
B. 2 行 for 改成 while
C. 3 行改成 print(我要好好学习)
D. 没有错误

(20) 小明写了一组代码,对100以内的两位数,使用一个两重循环打印出所有十位数数字比个位数数字小的数,看看他写的哪里错了吧?()
在这里插入图片描述
A. 1 行 for 改成 while
B. 3 行 if x<y: 改成 if x<y
C. 4 行改成 print (‘十位数数字比个位数数字小的数:’,x*10+ y)
D. 没有错误

猜你喜欢

转载自blog.csdn.net/xw1680/article/details/115086461