持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第2天,点击查看活动详情
一、键盘输入语句:
一、介绍:
在编程中,需要接收用户输入的数据,就可以使用键盘输入语句来获取。IuputDemo.go
二、步骤:
- 导入 fmt 包
- 调用 fmt 包的
fmt.Scanl()或者fmt.Scanf()
Scanf从标准输入扫描文本,根据format参数指定格式将成功读取的空白分隔的值保存进成功传递给本函数的参数。返回成功扫描的条目个数和遇到的任何错误。
三、案例演示:
要求:可以从控制台接收用户信息,【姓名,年龄,薪水,是否通过考试】
- 使用
fmt.Scanln()获取
package main
import "fmt"
func main() {
// 要求:可以从控制台接收用户信息,【姓名,年龄,薪水,是否通过考试】
// 方式一:fmt.Scanln
// 1. 先声明需要的变量
var name string
var age byte
var sal float32
var isPass bool
fmt.Println("请输入姓名:")
// 当程序执行到这里的时候,程序会停止在这里,等待用户输出
fmt.Scanln(&name)
// 这里面传递&地址 ,为什么传递地址?相当于引用传递,就是说当我们内部给name这个函数赋值了,就会影响到 var name string
// 中的 name 值,实际上就是把 name (var name string)的地址传递给了 scanln 里面,
// 在函数里面scanln输入的值传递给了 name ,从而影响到 name (var name string)
fmt.Println("请输入年龄:")
fmt.Scanln(&age)
fmt.Println("请输入薪水:")
fmt.Scanln(&sal)
fmt.Println("请输入是否通过考试:")
fmt.Scanln(&isPass)
fmt.Printf(" 名字是 %v \n 年龄是 %v \n 薪水是 %v \n 是否通过考试 %v \n", name, age, sal, isPass)
}
- 使用
fmt.Scanf()获取
package main
import "fmt"
func main() {
// 要求:可以从控制台接收用户信息,【姓名,年龄,薪水,是否通过考试】
var name string
var age byte
var sal float32
var isPass bool
// 方式二:fmt.Scanf ,可以按照指定的格式输入
fmt.Println("请输入你的姓名,年龄,薪水,是否通过考试,注意使用空格隔开 !")
fmt.Scanf("%s %d %f %t", &name, &age, &sal, &isPass)
fmt.Printf(" 名字是 %v \n 年龄是 %v \n 薪水是 %v \n 是否通过考试 %v \n", name, age, sal, isPass)
}