字数
288 字
阅读时间
2 分钟
输入输出
bufio 包
go
package main
import (
"bufio"
"fmt"
"os"
"strconv"
)
func main() {
reader := bufio.NewReader(os.Stdin)
// 读取整数,确定参数数量
fmt.Print("请输入参数数量: ")
countStr, _ := reader.ReadString('\n')
countStr = countStr[:len(countStr)-1] // 去掉换行符
count, err := strconv.Atoi(countStr)
if err != nil {
fmt.Println("输入的参数数量无效:", err)
return
}
// 读取对应数量的参数
fmt.Printf("请输入 %d 个参数:\n", count)
for i := 0; i < count; i++ {
param, _ := reader.ReadString('\n')
param = param[:len(param)-1] // 去掉换行符
fmt.Printf("参数 %d: %s\n", i+1, param)
}
}各位相加
strconv.Itoa 将整型数据转为字符串类型
go
func addDigits(num int) int {
if num < 10 {
return num
}
len := len(strconv.Itoa(num))
sum := 0
for i := 0; i < len; i++ {
sum += num % 10
num = num / 10
}
return addDigits(sum)
}go
func addDigits(num int) int {
for num >= 10 {
sum := 0
for ; num > 0; num /= 10 {
sum += num % 10
}
num = sum
}
return num
}go
if num==0:
return 0
if num%9==0:
return 9
return num%9判断是否有环
go
func hasCycle(head *ListNode) bool {
if head == nil || head.Next == nil {
return false
}
slow := head
fast := head.Next
for fast != nil && fast.Next != nil {
if slow == fast {
return true
}
slow = slow.Next
fast = fast.Next.Next
}
return false
}