小甲鱼第009讲:了不起的分支和循环3 | 课后测试题及答案
Posted 阳台外
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小甲鱼第009讲:了不起的分支和循环3 | 课后测试题及答案相关的知识,希望对你有一定的参考价值。
测试题:
- 下面的循环会打印多少次"I Love FishC"?
for i in range(0, 10, 2):
print(\'I Love FishC\')
5次,0开始,10结束,步进是2
- 下面的循环会打印多少次"I Love FishC"?
for i in 5:
print(\'I Love FishC\')
会报错错,上节课的课后习题我们提到了 in 是“成员资格运算符”,而不是像 C 语言那样去使用 for 语法。
- 回顾一下 break 和 continue 在循环中起到的作用?
break 跳出循环
continue 符合条件时开始下一个循环 - 请谈下你对列表的理解?
可能和c的数组有关 - 请问 range(10) 生成哪些数?
会生成 range(0, 10),转换成列表为0到9,10个数 - 目测以下程序会打印什么?
while True:
while True:
break
print(1)
print(2)
break
print(3)
2
3
5. 什么情况下我们要使循环永远为真?
用于游戏实现,因为游戏只要运行着,就需要时刻接收用户输入,因此使用永远为真确保游戏“在线”,也可以用于账号密码登入,要退出时用break
6. 【学会提高代码的效率】你的觉得以下代码效率方面怎样?有没有办法可以大幅度改进(仍然使用while)?
i = 0
string = \'ILoveFishC.com\'
while i < len(string):
print(i)
i += 1
i = 0
string = \'ILoveFishC.com\'
length = len(string)
while i < length:
print(i)
i += 1
动动手:
- 设计一个验证用户密码程序,用户只有三次机会输入错误,不过如果用户输入的内容中包含"*"则不计算在内。
count = 3
password = \'cccc\'
while count:
passwords = input(\'请输入密码:\')
if passwords == password:
print(\'密码正确,进入程序......\')
break
elif \'*\' in passwords:
print(\'密码中不能含有"*"号!您还有\', count, \'次机会!\', end=\' \')
continue
else:
print(\'密码输入错误!您还有\', count-1, \'次机会!\', end=\' \')
count -= 1
- 编写一个程序,求 100~999 之间的所有水仙花数。
如果一个 3 位数等于其各位数字的立方和,则称这个数为水仙花数。例如:153 = 1^3 + 5^3 + 3^3,因此 153 就是一个水仙花数
没看懂,懂了再写理解
for i in range(100, 1000):
sum = 0
temp = i
while temp:
sum = sum + (temp%10) ** 3
temp = temp//10
if sum == i:
print(i)
- 三色球问题
有红、黄、蓝三种颜色的求,其中红球 3 个,黄球 3 个,绿球 6 个。先将这 12 个球混合放在一个盒子中,从中任意摸出 8 个球,编程计算摸出球的各种颜色搭配。
range(2, 7) 是产生 [2, 3, 4, 5, 6] 这 5 个数,绿球不能是 1 个,因为如果绿球是 1 个的话,红球 + 黄球需要有 7 个才能符合题意,而红球和黄球每种只有 3 个,因此是 range(2, 7)
print(\'red\\tyellow\\tgreen\')
for red in range(0, 4):
for yellow in range(0, 4):
for green in range(2, 7):
if red + yellow + green == 8:
# 注意,下边不是字符串拼接,因此不用“+”哦~
print(red, \'\\t\', yellow, \'\\t\', green)
- 请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!
以上是关于小甲鱼第009讲:了不起的分支和循环3 | 课后测试题及答案的主要内容,如果未能解决你的问题,请参考以下文章
小甲鱼Python第027讲集合:在我的世界里,你就是唯一 | 课后测试题及参考答案