gpt4 book ai didi

input - 在 Go 中,使用递归扫描一行中的数字

转载 作者:数据小太阳 更新时间:2023-10-29 03:29:53 24 4
gpt4 key购买 nike

我想从标准输入中扫描一行整数到一个整数片段中。每个整数由空格分隔。 Ther 将有多达 N 个整数的用户输入。我尽量不使用 for 循环。例如,

1 15 16 17

到目前为止,这是我执行任务的功能,

var array []int

func read(b int) {
if b == 0 {
return
}
fmt.Scanf("%d", &array)
read(b - 1)
}

想法是从输入中读取 1 15 16 17,并将其放入值为 [1 15 16 17] 的 slice

编译后报错,

Runtime error

最佳答案

例如,

package main

import "fmt"

var a []int

func read(b int) {
if b == 0 {
return
}
var i int
_, err := fmt.Scanf("%d", &i)
if err != nil {
return
}
a = append(a, i)
read(b - 1)
}

func main() {
read(4)
fmt.Println(a)
}

输入:

1 15 16 17<Enter>

输出:

[1 15 16 17]

关于input - 在 Go 中,使用递归扫描一行中的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35976781/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com