学习笔记6------流程控制①

前面我们写的程序都是从第一行开始执行,一直执行到末尾,一行一行的顺序执行下来,这种执行结构叫顺序执行结构。
GO语言除了有顺序结构,还有选择结构,循环结构。
顺序结构:程序按顺序执行,不发生跳转。
选择结构:依据是否满足条件,有选择的执行相应功能。
循环结构:依据条件是否满足,循环多次执行某段代码。

1.1if结构

在编程中实现选择判断结构就是用if
if结构基本语法
if 条件判断{
代码语句
},
条件判断如果为真(true),那么就执行大括号中的语句,如果为假(false),就不执行大括号中的语句,(大家可以想一下,什么样的表达式返回的结果要么为true,要么为false),继续执行if结构后面的代码
具体案例如下:

func main(){
var age int=26
var b bool
b=age>18
if b{
fmt.Println("我已经成年了。")
}
}

上面的代码可以转化为

func main(){
var age int =30
if age>18{
fmt.Println("我已经成年了。")
}
}

条件不满足时不执行

func main(){
var age int =16
if age>=18{
fmt.Println("我已近成年了")
}
}

1.2if else结构

结构如下:
if 条件判断{
代码语句1
}else{
代码语句2
}
首先先执行if后面的条件判断,如果条件判断成立(结果为真),执行if后面的代码语句1,代码语句1执行完成后,表示整个if—else–结构结束了(else后面的代码语句2不会执行),继续执行后面的代码。如果if后面的条件判断不成立也就是结果为假,那么if后面的代码语句1不会被执行,这时会执行else后面的代码语句2,执行完后,表示整个if—else—结构执行结束了,再执行后续的代码。

//成绩大于等于60分及格,否则不及格
func main(){
var score int
fmt.Println("请输入成绩")
fmt.Scan(&score)
if score>=60{
fmt.Println("成绩合格")
}else{
fmt.Println("成绩不合格")
}
}

1.3 if嵌套

我们上面的案例中,使用的是if-else的基本结构,其实if-else结构还可以进行嵌套使用。

//例如:输入公交卡当前的余额,只要超过2元,就可以上公交车;如果空座位的数量大于0,就可以坐下。
func main(){
var money int
fmt.Println("请输入公交卡的余额")
fmt.Scan(&money)
if money>=2{
var seat int
fmt.Println("请输入公交车的座位数")
fmt.Scan(&seat)
if seat>0{
fmt.Println("请坐")
}else{
fmt.Println("不好意思,暂时没有座位了")
}
}else{
fmt.Println("余额不足,请充值!")
}
}

猜你喜欢

转载自blog.csdn.net/weixin_42927934/article/details/81751109