Go之路(九):流程控制
流程控制
主要说一下switch
练习1:
写一个程序猜数字
package main
import(
"fmt"
"math/rand"
)
func main(){
var a int
a = rand.Intn(100)
var b int
for {
fmt.Scanf("%d/n", &b)
flag := false
switch {
case a == b:
fmt.Println("bingo")
flag = true
case b > a:
fmt.Println("bigger")
case b < a:
fmt.Println("less")
}
if flag{
break
}
}
}
1.Scanf这里第一个参数是格式化字符串,d代表整数,s代表字符串,后面是分隔符,默认是使用空格
2.如果用默认的话会打印两次,因为会把回车也算入里面,用/n作为分隔符即可解决
练习2:

package main
import(
"fmt"
)
func main(){
for i := 0; i<=5; i++{
for ii := 0; ii<=i;ii++{
fmt.Print("A")
}
fmt.Println()
}
}
for range
package main
import(
"fmt"
)
func main(){
str := "hello world , 中国"
for index, value := range str{
fmt.Printf("index[%d], value[%c], len=%d\n",index, value , len([]byte(string(value))))
}
}

浙公网安备 33010602011771号