每日练习
题目7 (实操题)*
题干
使用for循环计算从0到用户输入的值的累加和
训练目标
range()的使用
训练提示
- range()方法的作用
- for循环如何使用
- 累加重新辅助
参考方案
- 使用for寻遍遍历0~100
- 进行累加重新赋值
操作步骤
- 定义变量sum,初始化sum=0
- 遍历0~100的所有的值
- 进行累加和
参考答案
a = int(input('请输入数字:'))# 注意数据类型
sum = 0
for i in range(a):
sum += i
print(sum)# 注意print位置
题目6 (实操题)*
题干
要求用户输入一个字符串,遍历当前字符串并打印,如果遇见“q”,则跳出循环。如果遇见“ ”(空格)则跳过当前输出。
训练目标
- for循环的基本使用
- break的作用
- continue的作用
训练提示
- for 循环的基本语法是什么
- for循环的作用是什么
- break的作用?
- continue的作用?
参考方案
- 使用for循环遍历当前字符串
- 判断每一字符是什么进行操作
操作步骤
- 提示用户输入字符串
- 便利当前字符串
- 如果是“q”则退出,如果是“ ”(空格)则跳过本次循环
- 打印字符
参考答案
input_str = input("请输入一个字符串:")
for i in input_str:
if i == "q":
break
elif i == " ":
continue
print(i)
题目5(实操题)*
题干
已知变量如下:
a = "itheima"
从键盘上输入一个字母,判断此字母 是否在变量 a 中,如果在则输出 找到了, 如果不在 则输出 查无此字母
训练目标
- for…else的使用
训练提示
- 遍历此变量,判断这个 “i”,是否 等于 遍历得到的每个结果,如果等于,则说明 在变量 a中
- 注意在循环中 执行了break 后,else则不会执行
操作步骤
-
使用for 循环遍历变量a
-
判断遍历的结果是否 == 于 “i”, 如果等于, 则输出找到了,执行break
-
如果没找到, 则执行 else,输出 查无此字母
参考答案
value = input('请输入:')
a = 'itheima'
for i in a:
if i == value:
print('找到了')
break # 注意break所在的位置if中
else:
print("无")
题目4(实操题)
题干
设计“过7游戏”的程序, 打印出1-100之间除了7和7的倍数之外的所有数字,如果遇见7和7的倍数则打印“哈~”跳过本次循环。
训练目标
- while中的continue的使用
训练提示
- continue的作用是什么?
- 如何判断一个数是7的倍数
- 如果是7的倍数我们需要跳过本次循环进入到下一次循环
参考方案
- 我们如果打印1~100的数字?
- 当遇见了7的倍数,我们打印“哈~”后还如何做?
- 注意“i”的位置,不要放到continue的下面,会造成死循环
操作步骤
- 定义循环次数
- 使用while循环
- 判断当前值是否是7的倍数
- 如果是7的倍数那么我们需要打印“哈~”,并且跳过本次循环
参考答案
i = 0
while i <= 100:
i += 1
if i % 7 == 0:
print("找到你了!")
continue
print(i, end=' ')
结果
1 2 3 4 5 6 找到你了!
8 9 10 11 12 13 找到你了!
15 16 17 18 19 20 找到你了!
22 23 24 25 26 27 找到你了!
29 30 31 32 33 34 找到你了!
36 37 38 39 40 41 找到你了!
43 44 45 46 47 48 找到你了!
50 51 52 53 54 55 找到你了!
57 58 59 60 61 62 找到你了!
64 65 66 67 68 69 找到你了!
71 72 73 74 75 76 找到你了!
78 79 80 81 82 83 找到你了!
85 86 87 88 89 90 找到你了!
92 93 94 95 96 97 找到你了!
99 100 101
题目3(实操题)
题干
编写代码模拟用户登陆。要求:用户名为 python,密码 123456,如果输入正确,打印“欢迎光临”,程序结束,如果输入错误,提示用户输入错误并重新输入
训练目标
- while中的break的使用
训练提示
- 定义变量,用户名和密码采用什么格式存储
- 循环没有次数限制,那么我们使用while循环的时候条件是什么?
- 判断用户名和密码是否相同,我们的条件采用“or"还是“and”?
- break的作用是什么
参考方案
- 首先我们要自己定义用户名和密码保存
- 如果用户错误那么就需要重新循环,我们就需要采用什么方式进行循环?
- 提示用户输入信息
- 判断输入信息,根据不同的结果进行不同的执行方式
操作步骤
- 定义名户名和密码分别为name = “python”,pwd = “123456”
- 使用循环,循环条件是True
- 提示用户输入用户名和密码
- 判断用户名和密码是否正确
- 如果正确跳出循环,不正确提示输入错误
user_name = 'python'
user_passwd = '123'
while True:
name = input('请输入用户名:')
passwd = input('请输入密码:')
if user_name ==name and user_passwd == passwd:
print('请进!')
break # 注意break位置
else:
print('用户名或者密码错误')
题目2(实操题)
题干
使用while嵌套循环打印如下图形
*
* *
* * *
* * * *
* * * * *
训练目标
- while嵌套循环的使用
训练提示
- 使用while嵌套的形式打印图形
- 哪个循环控制的是行数,哪个循环控制的是列数?
- 内层循环的条件是什么?
- 如何让打印后不自动换行
参考方案
- while嵌套循环,外层循环代表的是行数,内层循环代表的是每行的个数(列)
- 内层循环个数是外层循环行数的值
- 打印print(" “,end=” ") end代表的是每次打印的时候以什么结尾,默认是“\n” 换行
操作步骤
- 定义外层循环,循环5次
- 定义内层循环,循环条件是外层循环的循环次数
- 打印“*” 设置 end=" " 修改自动换行
- 内层循环结束后打印一个换行
i = 0
while i <= 5:
a = 0
while a <= i:
print("*", end=" ")
a += 1
i += 1
print()
题目1 (实操题)
题干
使用while循环计算1~100的累加和(包含1和100)
训练目标
- whlie循环的基本使用
训练提示
- whlie循环的基本格式是什么?
- while循环的条件(次数)和累加值的关系?
- 求和后重新赋值
参考方案
- 用一个“sum”的变量来存储求和后的数值
- 定义变量,控制循环次数
- 使用while循环,进行求和运算
操作步骤
- 定义一个变量“sum”,初始化赋值为“0”,保存求和的值
- 定义变量“i” ,用于控制循环次数
- while循环,当"i<=100"时跳出循环
- 累加和
- 变量“i”自增,确保循环能够正常跳出
i = 1
num = 0
while i <= 100:
num = num + i
print("第%d次" % i)
i += 1
print(num)