程序流程控制
1.1 程序流程控制介绍
在程序中,程序运行的流程控制决定程序是如何执行的,是我们必须掌握的,主要有三大流程控制语句。
- 顺序控制
- 分支控制
- 循环控制
5.2 顺序控制
程序从上到下逐行地执行,中间没有任何判断和跳转。 一个案例说明,必须下面的代码中,没有判断,也没有跳转.因此程序按照默认的流程执行,即顺序控制。
//假如还有97天放假,问:xx个星期零xx天
var days int = 97
var week int = days / 7
var day int = days % 7
fmt.Printf("%d个星期零%d\n",week,day)
//定义一个变量保持化石温度,华氏温度转换摄氏温度的公式为;
//5/9(华氏温度-100),请求出华氏温度对应的摄氏温度
var huashi float32 = 134.2
var sheshi float32 = 5.0/9 *(huashi - 100)
fmt.Printf("%v 对应的摄氏温度=%v \n" ,huashi,shesi)
1.2.1顺序控制的一个流程图
1.2.2顺序控制举例和注意事项
Golang 中定义变量时采用合法的前向引用。如:
func main() {
var num1 int = 10 //声明了num1
var num2 int = num1 + 20 //使用num1 fmt.Println(num2)
}
错误形式:
func main() {
var num2 int = num1 + 20 //使用num1
var num1 int = 10 //声明num1 (×) fmt.Println(num2)
}
1.3 分支控制 1.3.1分支控制的基本介绍
分支控制就是让程序有选择执行。有下面三种形式
- 单分支
- 双分支
- 多分支
1.3.2单分支控制
1)基本语法
if 条件表达式{
执行代码块
}
说明:当条件为true时,执行{}代码
注意{}是必须有的,就算只写一行代码
2)单分支的流程图 流程图可以用图形方式来更加清晰的描述程序执行的流程。
3)单分支的细节说明
//golang支持在if中,直接定义一个变量,比如下面
if age := 20;age >18{
fmt.Println("年龄大于18,要对自己的行为负责")
}
1.3.3双分支控制
Ø 基本语法
Ø 双分支的流程图的分析
对双分支的总结
1. 从上图看 条件表达式就是 age >18
2. 执行代码块1 ===> fmt.Println("你的年龄大于18") ..
3. 执行代码块2 ===> fmt.Println("你的年龄不大....") .
4. 强调一下 双分支只会执行其中的一个分支。