go流程控制之switch(13)

2023年 7月 15日 47.6k 0

请输入图片描述

switch和if很相似。这里分为switch单值和表达式。我们仍然借用上一篇中if中的实例"老婆老公买西瓜包子"来做

switch

老婆的想法:

package main
import "fmt"
func main(){
    var yes string
    fmt.Print("是否看到卖西瓜的?")
    fmt.Scan(&yes)
    fmt.Print("老婆的想法:")
    fmt.Println("买10个包子")
    switch yes {
    case "y":
        fmt.Println("买一个西瓜y")
    case "Y":
        fmt.Println("买一个西瓜Y")
    }
}

输入小y:

[root@marksugar /opt/Golang]# go run switch.go 
是否看到卖西瓜的?y
老婆的想法:买10个包子
买一个西瓜y

输入大Y:

[root@marksugar /opt/Golang]# go run switch.go 
是否看到卖西瓜的?Y
老婆的想法:买10个包子
买一个西瓜Y

输入n:

[root@marksugar /opt/Golang]# go run switch.go 
是否看到卖西瓜的?n
老婆的想法:买10个包子

!!! note

这里的switch可以写成一条
case "y","Y":
    fmt.Println("买一个西瓜")
}

老公的想法

switch default

package main
import "fmt"
func main(){
    var yes string
    fmt.Print("是否看到卖西瓜的?")
    fmt.Scan(&yes)
    fmt.Print("老公的想法:")
    fmt.Println("买10个包子")
    switch yes {
    case "y","Y":
        fmt.Println("买一个包子")
    default:
        fmt.Println("买十个包子")
    }
}

看到卖西瓜的:

[root@marksugar /opt/Golang]# go run switch.go 
是否看到卖西瓜的?y
老公的想法:买10个包子
买一个包子

没看到买西瓜的:

[root@marksugar /opt/Golang]# go run switch.go 
是否看到卖西瓜的?n
老公的想法:买10个包子
买十个包子

在用switch的方式修改,如果输入大于等于90就打印A,大于等于80打印B,大于等于70打印C,大于等于60打印D,小于60就打印D-不及格。如下:

    var score int
    fmt.Print("请输入成绩:")
    fmt.Scan(&score)

    switch {
    case score >= 90:
        fmt.Println("A")
    case score >= 80:
        fmt.Println("B")
    case score >= 70:
        fmt.Println("C")
    case score >= 60:
        fmt.Println("D")
    default:
        fmt.Println("D-,不及格")
    }

运行

[root@marksugar /opt/Golang]# go run switch.go 
请输入成绩:90
A
[root@marksugar /opt/Golang]# go run switch.go 
请输入成绩:80
B
[root@marksugar /opt/Golang]# go run switch.go
请输入成绩:70
C
[root@marksugar /opt/Golang]# go run switch.go
请输入成绩:60
D
[root@marksugar /opt/Golang]# go run switch.go
请输入成绩:50
D-,不及格

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论