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

相关推荐
zb2006412011 小时前
Laravel4.x核心特性全解析
spring boot·后端·php·laravel
techdashen11 小时前
在 Async Rust 中实现请求合并(Request Coalescing)
开发语言·后端·rust
lzp079111 小时前
C#如何优雅处理引用类型的深拷贝(贰)
spring boot·后端·ui
Mr.Java.11 小时前
Spring AI MCP Server分布式翻车现场:Streamable协议的甜蜜与危险,以及无状态救赎
java·后端·spring·ai·负载均衡
夕除11 小时前
spring boot 11
java·spring boot·后端
枕星而眠11 小时前
C++ String类精讲:从基础用法到进阶底层原理
开发语言·c++·后端·学习方法
念何架构之路11 小时前
Go pprof性能剖析
开发语言·后端·golang
zhz521411 小时前
Spring Boot 接入国密实战:传输加密(TLCP)+ 密码加密(SM4)
java·spring boot·后端·国密·sm4
我是一颗柠檬12 小时前
【JDK8新特性】函数式接口Day2
java·开发语言·后端·intellij-idea
Trouvaille ~12 小时前
【Redis篇】Redis 安装与启动:快速搭建一个 Redis 环境
数据库·redis·后端·ubuntu·缓存·环境搭建·安装教程