和老师的代码一样,结果却.....

来源:12-2 迷宫代码实现

慕工程1412309

2019-03-05

func readMaze(dir string) [][]int {
	file, err := os.Open(dir)
	if err != nil {
		panic(err)
	}
	defer file.Close()
	row, col := 0, 0
	fmt.Fscanf(file, "%d %d\n", &row, &col)
	maze := make([][]int, row)
	for i := range maze {
		maze[i] = make([]int, col)
		for j := range maze[i] {
			fmt.Fscanf(file, "%d", &maze[i][j])
		}
	}
	return maze
}
func main() {
	a := readMaze("maze.in")
	fmt.Println(a)
}

结果
[[1000 0 10 0 1010] [0 11100 0 1001 0] [1000 0 0 0 0] [0 0 0 0 0] [0 0 0 0 0] [0 0 0 0
0]]

写回答

1回答

慕工程1412309

提问者

2019-03-05

func readMaze(dir string) [][]int {
    file, err := os.Open(dir)
    if err != nil {
        panic(err)
    }
    defer file.Close()
    row, col := 0, 0
    fmt.Fscanf(file, "%d %d\n", &row, &col)
    maze := make([][]int, row)
    for i := range maze {
        maze[i] = make([]int, col)
        var str string
        fmt.Fscanf(file, "%s\n", &str)
        for j, _ := range str {
            maze[i][j], _ = strconv.Atoi(string(str[j]))
        }
    }
    return maze
}

结果

[[0 1 0 0 0] [0 0 0 1 0] [0 1 0 1 0] [1 1 1 0 0] [0 1 0 0 1] [0 1 0 0 0]]

0
1
璀璨星空fly
你用for循环打印吧,中间加个换行
2019-04-15
共1条回复

Google资深工程师深度讲解Go语言 由浅入深掌握Go语言

语法+分布式爬虫实战 为转型工程师量身打造

5995 学习 · 1909 问题

查看课程