赞
踩
在编程中,需要接收用户输入的数据,就可以使用键盘输入语句来获取
1. 导入fmt包
2. 调用fmt包中的fmt.Scanln() 或者fmt.Scanf()
- package main
-
-
- import "fmt" //导入fmt包
-
-
- func main() {
-
- var ( //定义所需变量
- name string
- age byte
- sal float32
- isPass bool
- )
-
- //fmt.Scanln接收用户输入
- fmt.Print("请输入姓名: ")
- fmt.Scanln(&name) //&name 传入变量的地址,相当于把接收到的值赋值给name的变量
-
- fmt.Print("请输入年龄: ")
- fmt.Scanln(&age)
-
- fmt.Print("请输入薪水: ")
- fmt.Scanln(&sal)
-
- fmt.Print("请输入是否通过考试: ")
- fmt.Scanln(&isPass)
-
-
- //格式化输出
- //Printf 里面的%v 相当于把后面变量的值按照顺序 放在前面%v的位置
- // \n 换行
- fmt.Printf("名字是 %v \n年龄是 %v \n薪水是 %v \n是否通过考试 %v \n",name,age,sal,isPass )
- }
- #用户输入
- 请输入姓名: 法外狂徒
- 请输入年龄: 149
- 请输入薪水: 0
- 请输入是否通过考试: True
-
-
-
- #程序输出
- 名字是 法外狂徒
- 年龄是 149
- 薪水是 0
- 是否通过考试 true
不过这样写太啰嗦了,我们优化一下
- package main
-
- import (
- "fmt"
- )
-
- func main() {
- var (
- name string
- age byte
- sal float32
- isPass bool
- )
- fmt.Printf("请输入你的姓名、年龄、薪水、是否通过考试,使用空格隔开" )
- fmt.Scanf("%s %d %f %t",&name,&age,&sal,&isPass)
- //%s 和刚才的%v类似,不过他只能接收字符串和[]byte
- //%d 接收十进制数
- //%f 接收浮点数 (小数)
- //%t 接收布尔值 true 或者 false
- //更多资源查看 https://studygolang.com/pkgdoc
- fmt.Printf("名字是 %v \n年龄是 %v \n薪水是 %v \n是否通过考试 %v \n",name,age,sal,isPass )
- }
- 请输入你的姓名、年龄、薪水、是否通过考试,使用空格隔开ss 24 111111 true
- 名字是 ss
- 年龄是 24
- 薪水是 111111
- 是否通过考试 true
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。