Skip to content

【练习】九九乘法表

项目简介

九九乘法表

知识模块

  • Python 编程语言

知识点

  • 循环嵌套
  • 循环语句-for-in

受众

  • 初级测试开发工程师
  • 初级Python开发工程师

作业要求

编写一个 Python 程序,生成并输出下面所示的九九乘法表。

1 * 1 = 1   
1 * 2 = 2   2 * 2 = 4   
1 * 3 = 3   2 * 3 = 6   3 * 3 = 9   
1 * 4 = 4   2 * 4 = 8   3 * 4 = 12  4 * 4 = 16  
1 * 5 = 5   2 * 5 = 10  3 * 5 = 15  4 * 5 = 20  5 * 5 = 25  
1 * 6 = 6   2 * 6 = 12  3 * 6 = 18  4 * 6 = 24  5 * 6 = 30  6 * 6 = 36  
1 * 7 = 7   2 * 7 = 14  3 * 7 = 21  4 * 7 = 28  5 * 7 = 35  6 * 7 = 42  7 * 7 = 49  
1 * 8 = 8   2 * 8 = 16  3 * 8 = 24  4 * 8 = 32  5 * 8 = 40  6 * 8 = 48  7 * 8 = 56  8 * 8 = 64  
1 * 9 = 9   2 * 9 = 18  3 * 9 = 27  4 * 9 = 36  5 * 9 = 45  6 * 9 = 54  7 * 9 = 63  8 * 9 = 72  9 * 9 = 81  

解题思路

  1. 嵌套循环:用来生成九九乘法表的每个数字。

  2. 外层循环:控制行数,从1到9。

  3. 内层循环:控制列数,从1到当前行数。

  4. 输出结果:按照格式输出。

  • 有行有列的的输出形式,通常使用双层循环嵌套实现,外层循环控制行,内层循环控制列
  • 通过效果图可以看出,每一行的总列数同所在行数一致
  • 默认 print 函数在每次输出后,都要换行,如果在一行中输出多列,有两种解决办法
    • 改变 print 函数的结束符参数
    • 将每行中的多列使用字符串进行拼接,一次性输出

完整代码

for i in range(1, 10):
    # 内层循环控制列数
    for j in range(1, i + 1):
        # 输出乘积并保持格式对齐
        print(f"{j} * {i} = {i * j}", end=" ")
    # 换行
    print()

代码讲解

  1. for i in range(1, 10):这是外层循环,它控制每一行的输出。循环变量 i 取值从1到9,代表了乘法表中的行数。

  2. for j in range(1, i + 1):这是内层循环,它控制每一行中的列数。循环变量 j 取值从1到当前行数 i,代表了乘法表中的列数。

  3. print(f"{j} * {i} = {i * j}", end="\t"):在内层循环中,使用格式化字符串来输出乘法表达式和乘积。{j}{i} 分别表示当前列数和行数,而 {i * j} 表示当前列数和行数的乘积。end="\t" 用于在输出之后加上一个制表符,以保持格式对齐。

  4. print():在每行的内层循环结束后,通过调用 print() 函数进行换行,从而开始下一行的输出。