Go语言实战案例-读取用户输入并打印

📚 案例目标

掌握使用 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.Readeros.Stdin(将在后续案例讲解)。

💡 练习扩展

  • • 修改程序,使其还能读取用户的年龄,并打印"你好,Alice,今年你25岁"。
  • • 使用 fmt.Printf() 改写输出语句,使其更加格式化。

🧪 示例运行

复制代码
请输入你的名字:Tom
你好,Tom!欢迎学习Go语言!

相关推荐
哈里谢顿20 小时前
`127.0.0.1` 和 `0.0.0.0` 有何区别?通过验证 demo来展示
后端
树獭叔叔20 小时前
08-大模型后训练的指令微调SFT:LoRA让大模型微调成本降低99%
后端·aigc·openai
苏三说技术20 小时前
我终于遇到一台真正懂程序员的显示器!
后端
Re_zero20 小时前
线上日志被清空?这段仅10行的 IO 代码里竟然藏着3个毒瘤
java·后端
花落人散处20 小时前
流式输出——解决 HITL 难题 (SpringAIAlibaba)
后端
BingoGo1 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php
JaguarJack1 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php·服务端
Victor3561 天前
MongoDB(18)如何向MongoDB集合中插入文档?
后端
Victor3561 天前
MongoDB(19)如何查询MongoDB集合中的文档?
后端
CocoaKier1 天前
苹果谷歌商店:如何监控并维护用户评分评论
ios·google·apple