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语言!

相关推荐
武子康4 分钟前
大数据-113 Flink 源算子详解:非并行源(Non-Parallel Source)的原理与应用场景
大数据·后端·flink
QZQ541888 分钟前
高性能现代CPP--表达式模板(expression templates)
后端
莹Innsane1 小时前
使用 VictoriaLogs 存储和查询服务器日志
后端
karry_k1 小时前
BlockingQueue与SynchronousQueue
后端
前端伪大叔1 小时前
第15篇:Freqtrade策略不跑、跑错、跑飞?那可能是这几个参数没配好
前端·javascript·后端
Postkarte不想说话1 小时前
使用MSF生成反弹shell
后端
golang学习记1 小时前
Go 项目目录结构最佳实践:少即是多,实用至上
后端
合作小小程序员小小店1 小时前
web开发,在线%校园,论坛,社交管理%系统,基于html,css,python,django,mysql
数据库·后端·mysql·django·web app
用户4099322502121 小时前
PostgreSQL里的PL/pgSQL到底是啥?能让SQL从“说目标”变“讲步骤”?
后端·ai编程·trae
红烧code2 小时前
【Rust GUI开发入门】编写一个本地音乐播放器(9. 制作设置面板)
开发语言·后端·rust