/ Go 语言输出九九乘法表 /
九九乘法表是我们学习编程时的一项基本练习,它看似简单,通过实现输出九九乘法表可以加深对 Go 语言循环结构的理解和运用。
本文将使用 Go 语言输出九九乘法表,内容涵盖:
- 问题描述
- 基本思路
- 使用双层 for 循环实现
- 控制打印格式
- 加入条件判断
- 计算并打印结果
- 优化循环结构
- 为表格添加标题
- 完整代码示例
- 总结思考
希望通过具体的代码实现和输出分析,可以帮助大家更好地理解 Go 语言中的基础循环语法,和编程思维方式。输出九九乘法表看似简单,其中却包含许多编程学习的思考点。
1
1. 问题描述
要求编写 Go 语言程序,在终端打印输出九九乘法表,格式如下:
1 * 1 = 1 1 * 2 = 2 2 * 2 = 4 ... 1 * 9 = 9 2 * 9 = 18 ... 9 * 9 = 81
分析可知需要使用双层循环,并在内层控制打印格式。
2
2. 基本思路
九九乘法表输出的基本思路是:
- 使用外层循环控制行
- 使用内层循环控制列
- 内层循环处理乘法计算和打印
3
3. 使用双层 for 循环实现
使用双层 for 循环可以实现九九表的打印:
for i := 1; i <= 9; i++ { for j := 1; j <= i; j++ { } }
外层 for 循环控制行,内层 for 循环控制列。
4
4. 控制打印格式
通过 fmt.Printf 可以格式化输出内容:
for i := 1; i <= 9; i++ { for j := 1; j <= i; j++ { fmt.Printf("%d * %d = %d", i, j, i*j) } fmt.Println() }
Println 打印换行符,进行行分隔。
5
5. 加入条件判断
可以判断内层循环 index,从而控制换行:
for i := 1; i <= 9; i++ { for j := 1; j <= i; j++ { fmt.Printf("%d * %d = %d", i, j, i*j) if j < i { fmt.Printf("\t") } } fmt.Println() }
6
6. 计算并打印结果
上面直接使用 i * j 进行运算,也可以分开计算结果:
for i := 1; i <= 9; i++ { for j := 1; j <= i; j++ { result := i * j fmt.Printf("%d * %d = %d", i, j, result) if j < i { fmt.Printf("\t") } } fmt.Println() }
这样分离了计算和输出。
7
7. 优化循环结构
可以将条件判断移到 for 循环中:
for i := 1; i <= 9; i++ { for j := 1; j <= i; j++ { if j < i { fmt.Printf("\t") } } fmt.Println() }
这样可以精简代码逻辑。
8
8. 为表格添加标题
可以在外层再套一层循环打印标题:
fmt.Println("Multiplication Table") for i := 1; i <= 9; i++ { // 省略内层循环逻辑 fmt.Println() }
这样输出表格增加了标题。
9
9. 完整代码示例
综合以上,完成代码如下:
package main import "fmt" func main() { fmt.Println("Multiplication Table") for i := 1; i <= 9; i++ { for j := 1; j <= i; j++ { if j < i { fmt.Printf("%d * %d = %d\t", i, j, i*j) } else { fmt.Printf("%d * %d = %d", i, j, i*j) } } fmt.Println() } }
输出结果:
Multiplication Table 1 * 1 = 1 1 * 2 = 2 2 * 2 = 4 1 * 3 = 3 2 * 3 = 6 3 * 3 = 9 ...
10
10. 总结思考
输出九九乘法表虽看似简单,但其中包含:
- 嵌套循环的思想
- 循环控制和判断
- 格式化打印输出
- 算法优化
都是编程非常基础的概念和技能。在实现的过程中不仅巩固了 Go 语言循环语法,也培养了编程思维能力。可以进行扩展练习,如输出更大的表格、或者将结果输出到文件等。输出九九乘法表是一个编程入门的好题目。