📚 案例目标
掌握使用 fmt
包读取终端输入内容,并将其打印输出。适合初学者熟悉基本的 I/O 操作。
🛠 案例说明
我们将编写一个小程序,提示用户输入自己的姓名,然后打印一条欢迎信息,如:
请输入你的名字:Alice
你好,Alice!欢迎学习Go语言!
🔑 涉及知识点
- •
fmt.Scanln()
用于读取控制台输入 - •
fmt.Print()
和fmt.Println()
用于输出信息 - • 基本的字符串拼接与变量使用
✅ 示例代码
go
package main
import (
"fmt"
)
func main() {
var name string
fmt.Print("请输入你的名字:")
fmt.Scanln(&name)
fmt.Println("你好," + name + "!欢迎学习Go语言!")
}
📎 代码解析
行号 | 说明 |
---|---|
1-3 | 导入 fmt 包用于输入输出 |
5 | 定义变量 name 用于存储输入的名字 |
7 | 使用 fmt.Print() 打印提示信息,不自动换行 |
8 | 使用 fmt.Scanln(&name) 从标准输入读取用户输入,赋值给 name |
10 | 使用 fmt.Println() 打印欢迎语句,并拼接变量 |
📌 补充说明
- •
fmt.Scanln()
会读取用户输入的第一行文本,空格之后的内容不会保存。适合简单的单词/名称输入。 - • 如果你需要读取一整句内容(包括空格),可以使用
bufio.Reader
和os.Stdin
(将在后续案例讲解)。
💡 练习扩展
- • 修改程序,使其还能读取用户的年龄,并打印"你好,Alice,今年你25岁"。
- • 使用
fmt.Printf()
改写输出语句,使其更加格式化。
🧪 示例运行
请输入你的名字:Tom
你好,Tom!欢迎学习Go语言!