package main

import "fmt"

func main() {
	var arr = [3][4]int{{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}}
	//恢复下面的代码即为手动输入数组内元素
	/*
		for i := 0; i < len(arr); i++ {
			for j := 0; j < len(arr[i]); j++ {
				fmt.Printf("输入%d行%d列的数:", i+1, j+1) //数组下标加一
				fmt.Scanln(&arr[i][j])
			}
		}
	*/
	fmt.Println("原数组为:")
	for i := 0; i < len(arr); i++ {
		for j := 0; j < len(arr[i]); j++ {
			fmt.Print(arr[i][j], "\t")
		}
		fmt.Println()
	}
	fmt.Println("输出周围为0的数组:")
	//可以在GoLand里打断点进行测试
	for i := 0; i < len(arr); i++ {
		for j := 0; j < len(arr[i]); j++ {
			if i == 0 || i == len(arr)-1 || j == 0 || j == len(arr[i])-1 {
				fmt.Print("0\t")
			} else {
				fmt.Print(arr[i][j], "\t")
			}
		}
		fmt.Println()
	}
}

输出结果为:
原数组为:
1 2 3 4
5 6 7 8
9 10 11 12
输出周围为0的数组:
0 0 0 0
0 6 7 0
0 0 0 0

新手,有问题还请评论区指教!