package main
import "fmt"
func main() {
var (
a string
)
fmt.Println("请输入:")
fmt.Scan(&a)
fmt.Println("数值为:", a)
fmt.Printf("数据类型为%T", a)
}
##终端上
PS F:\goproject\src\dev_code\day7\example1\main> go run .\main.go
请输入:
101
数值为: 101
数据类型为string
Atoi——string—>int字符串转数值
Atoi会输出一个值和一个错误的值
package main
import "fmt"
func main() {
var (
a string
)
fmt.Println("请输入:")
fmt.Scan(&a)
fmt.Println("数值为:", a)
fmt.Printf("数据类型为%T", a)
}
##终端上
PS F:\goproject\src\dev_code\day7\example1\main> go run .\main.go
请输入:
101
数值为: 101
数据类型为string
Itoa——int--->string数值转字符串
2、随机数
package main
import (
"fmt"
"math/rand"
)
//随机数分为两种,伪随机和真随机
//伪随机产生随机数的概率看起来相等
//真随机,密码学相关 X
func main() {
rand.Seed(time.Now().Unix()) //随机种子
a := rand.Intn(100) //随机数
fmt.Println(a)
}
##
81
猜商品的价格
package main
import (
"fmt"
"math/rand"
"time"
)
//猜商品价格,商品高低,商品家隔随机生产[0-300)
//如果你输入的商品价格大于商品价格则提示价格过高
//如果你输入的商品价格小于商品价格则提示价格过低
//直到猜中商品价格为止,并统计猜的次数
func main() {
rand.Seed(time.Now().Unix())
var (
price int
count = 0
)
real_price := rand.Intn(300)
for {
count++
fmt.Print("请输入商品价格:")
fmt.Scan(&price)
if price > real_price {
fmt.Println("猜测商品价格过高", "真实价格为:", real_price)
continue
}
if price < real_price {
fmt.Println("猜测商品价格过低", "真实价格为:", real_price)
continue
} else {
fmt.Println("真实价格为:", real_price)
break
}
}
fmt.Println("猜测次数为:", count)
}
##
PS F:\goproject\src\dev_code\day7\example3\main> go run .\main.go
请输入商品价格:200
猜测商品价格过低 真实价格为: 225
请输入商品价格:225
真实价格为: 225
猜测次数为: 2