Files
DailyChallenge_ProgrammingD…/Day_7/README.md
T
2026-08-22 01:09:28 +08:00

2.2 KiB
Raw Blame History

Day_7 · 循环:重复做的事交给程序

预计耗时:20~30 分钟 后端最常干的事就是"把一堆数据逐个处理"——这正是循环。列表遍历(Day_4)你已经用过了,今天学正式的 for 和 while。

今日知识点

  • for i in range(n): 循环 n 次(range(1, 11) 是 1~10)
  • while 条件: 条件为真就一直循环
  • break 跳出循环;continue 跳过本次进入下一次
  • 累加套路:total = total + i(可简写 total += i)

先学(教程)

任务(后做)

新建 day7.py:

  1. 用 for 求 1 加到 100 的和,打印结果(应该是 5050):
    total = 0
    for i in range(1, 101):
        total += i
    print(total)
    
  2. 打印 1~10 的平方:
    for i in range(1, 11):
        print(f"{i}的平方是{i ** 2}")
    
  3. 用 while 从 10 倒数到 1:
    n = 10
    while n >= 1:
        print(n)
        n -= 1          # 别忘了让 n 变小,否则死循环
    
  4. 进阶(加分):打印九九乘法表(用双重 for 循环):
    1x1=1
    1x2=2 2x2=4
    1x3=3 2x3=6 3x3=9
    ...
    
    提示:外层 for i in range(1, 10):,内层 for j in range(1, i + 1):, 每行结束用 print() 换行。

完成标准

  • 任务 1 输出 5050
  • 任务 2、3 输出正确且程序能正常结束(没有卡死)
  • 能说出 break 和 continue 的区别
  • (进阶)乘法表正确

提交方式:把 day7.py 代码贴在当日工单评论里。

参考解答(先做再看)

# 1. 求和
total = 0
for i in range(1, 101):
    total += i
print(total)                 # 5050

# 2. 平方
for i in range(1, 11):
    print(f"{i}的平方是{i ** 2}")

# 3. 倒数
n = 10
while n >= 1:
    print(n)
    n -= 1

# 4. 进阶:九九乘法表
for i in range(1, 10):
    for j in range(1, i + 1):
        print(f"{j}x{i}={j * i}", end="  ")
    print()                  # 换行