二维数组的遍历,也分为常规遍历,和for-range的遍历。效果一样。
二维遍历的练习:定义一个3行4列的二维数组,逐个从键盘输入值,编写一个程序,将4周的数值都清零。
package main
import (
"fmt"
)
func main() {
var arr [3][4]int
for i := 0; i < len(arr); i++ {
for j := 0; j < len(arr[i]); j ++ {
fmt.Printf("请输入第%d行,第%d列的 \n",i+1,j+1)
fmt.Scanln(&arr[i][j])
}
}
println()
//for-range遍历二维数组
for _, v1 := range arr {
println()
for _, v2 := range v1 {
fmt.Printf("%v \t",v2)
}
}
println()
//常规遍历,并将数组周边的数值改变成0
for i := 0; i < len(arr); i ++ {
println()
for j := 0; j < len(arr[i]); j++{
if i == 0 && j == 0||i == 1 && j == 0 || i == 2 && j == 0 || j == 3 {
arr[i][j] = 0
}
fmt.Print(arr[i][j]," ")
}
}
println()
}
结果输出: