Skip to content

迭代语句

  1. 使用循环打印从 1 到 10 的所有整数。
python
# 使用 for 循环
for i in range(1, 11):
    print(i)

# 或者使用 while 循环
i = 1
while i <= 10:
    print(i)
    i += 1
  1. 使用循环计算从 1 到 100 的所有整数的和。
python
# 使用 for 循环
total = 0
for i in range(1, 101):
    total += i
print(f"1 到 100 的和是: {total}")

# 或者使用 while 循环
total = 0
i = 1
while i <= 100:
    total += i
    i += 1
print(f"1 到 100 的和是: {total}")
  1. 使用循环逆序打印从 10 到 1 的所有整数。
python
# 使用 for 循环
for i in range(10, 0, -1):
    print(i)

# 或者使用 while 循环
i = 10
while i >= 1:
    print(i)
    i -= 1
  1. 计算 10 的阶乘(10! = 10 × 9 × 8 × ... × 1)。
python
# 使用 for 循环
factorial = 1
for i in range(1, 11):
    factorial *= i
print(f"10 的阶乘是: {factorial}")

# 或者使用 while 循环
factorial = 1
i = 1
while i <= 10:
    factorial *= i
    i += 1
print(f"10 的阶乘是: {factorial}")

5.打印九九乘法口诀表

python
# 使用嵌套 for 循环
for i in range(1, 10):
    for j in range(1, i + 1):
        print(f"{j} × {i} = {i*j}", end="\t")
    print()  # 换行
  1. 打印一个实心正三角形宝塔,每行星星数量随行数递增,视觉上像一座向上的宝塔。
python
# 基础正三角星星宝塔(行数可自定义,这里以5行为例)
rows = 5

for i in range(1, rows + 1):  # i 控制行数(1到rows)
    # 1. 打印每行星星前的空格,让三角形居中
    for j in range(rows - i):
        print(" ", end="")
    # 2. 打印当前行的星星,数量为 2*i - 1(第1行1颗,第2行3颗...)
    for k in range(2 * i - 1):
        print("*", end="")
    # 3. 每行结束后换行
    print()

7.输入一个非负整数,用 while 循环统计它的位数(如输入 123 输出 3,输入 0 输出 1)。

python
# 获取用户输入的非负整数
num = int(input("请输入一个非负整数: "))

# 特殊处理:输入为 0 时,位数直接是 1
if num == 0:
    digit_count = 1
else:
    digit_count = 0  # 初始化位数计数器
    temp = num       # 用临时变量存储数字,避免修改原变量
    
    # while 循环:数字不为 0 时,持续“拆位”
    while temp != 0:
        temp = temp // 10  # 整除 10,去掉最后一位(如 123→12,12→1,1→0)
        digit_count += 1   # 每拆一次,位数+1

# 输出结果
print(f"数字 {num} 的位数是: {digit_count}")

基于 VitePress 构建的 AP CSP 学习平台