go語言使用 程式流程控制之分支控制if else

2021-08-22 10:36:02 字數 2832 閱讀 9431

讓程式有選擇的的執行,分支控制有三種:單分支 ,雙分支 ,多分支

1、基本語法

if 條件表示式
說明:當條件表示式為ture 時,就會執行 的**。

注意 {} 是必須有的,就算你只寫一行**。

2、快速入門案例

編寫乙個程式,可以輸入人的年齡,如果該同志的年齡大於18歲,則輸出 「你年齡大

於18,要對自己的行為負責!」

/*

編寫乙個程式,可以輸入人的年齡,

如果該同志的年齡大於18歲,則輸出 "你年齡大

於18,要對自己的行為負責!"

*///單分支

func singlebranch( age int)

fmt.println("-----------------單分支------------------------")

}

3、單分支對應的流程圖

4、 if單分支使用細節和注意事項

go 的 if 有乙個強大的地方就是條件判斷語句裡面允許宣告乙個變數,這個變數的作用域只能在該條件**塊內,其他地方就不起作用了

//go支援在if 後,直接宣告變數,但是該變數作用域只能是if語句塊

if score := 90.8; score > 90

//這裡不能使用score

"score~=", score)

1、基本語法

if 條件表示式 

else

說明:

1) 先判斷條件表示式, 如果為真,則 執行**塊1, 如果為false,則執行**塊2

2) else 必須寫在第乙個if 的後面,不能換行寫

2、快速入門案例

編寫乙個程式,可以輸入人的年齡,如果該同志的年齡大於18歲,則輸出 「你年齡大於18,要對自己的行為負責!」。否則 ,輸出」你的年齡不大這次放過你了.」

//雙分支

func doublebranch( age int) else

fmt.println("-----------------雙分支-------------------------")

}

3、雙分支的流程圖

說明: 只能有乙個執行入口。

1、基本語法

if 條件表示式1

else

if 條件表示式2

……else

說明:

1)判斷流程 ,先看 條件表示式1 是否為真,如果為真,則執行**塊1, 如果不為真,則看條件表示式2 , 如果為真,則執行,否則繼續判斷,直到匹配成功。

2)如果乙個條件都沒有匹配上,則執行 else 語句

3)else .. if 可以有多個

5)else 可以沒有,但是一般來說,會有。

6)不管你寫了多少個 else ..if , 程式執行時,最多只能有乙個執行入口。

2、快速入門案例

/*多分支練習題*/

/*求ax2+bx+c=0方程的根。a,b,c分別為函式的引數,如果:b2-4ac>0,則有兩個解;

b2-4ac=0,則有乙個解;b2-4ac<0,則無解;

提示1:x1=(-b+sqrt(b2-4ac))/2

a

x2=(-b-sqrt(b2-4ac))/2

a提示2:math.sqrt(num); 可以求平方根 需要引入 math包

測試資料:

3 ,100, 6

分析:1、輸入 a b c 三個變數 float64

2、計算b^2 -4ac 的結果

3、判斷解

4、輸出

*/func morebranch(a ,b ,c float64) else

if res ==0 else

}

3、多分支的流程圖

1、基本介紹

在乙個分支結構中巢狀了另乙個完整的分支結構,裡面的分支的結構稱為內層分支外面的分支結構稱為外層分支。

2、基本語法

if 條件表示式 

else

}

說明: 巢狀分支不宜過多,建議控制在3層內

3、快速入門案例

參加百公尺運動會,如果用時8秒以內進入決賽,否則提示淘汰。並且根據性別提示進入男子組或女子組。 輸入成績和性別,進行判斷。

/*巢狀分支*/

/*參加百公尺運動會,如果用時8秒以內進入決賽,否則提示淘汰。

並且根據性別提示進入男子組或女子組。【可以讓學員先練習下】, 輸入成績和性別,進行判斷

分析:1、兩個變數 成績 grade float64 性別 sting

2、判斷是否進入決賽

3、進入決賽後判斷性別

4、輸出

*/func nestingbranch(grade int,*** string) else

if *** == "f" else

}else

}

流程控制之分支 選擇 語句

流程控制分為三種基本結構 順序結構 分支結構 迴圈結構。順序結構順序結構是指命令列順序執行,這是最常見的乙個格式。分支結構分支結構是一種選擇結構,根據條件的值選擇不同的執行流程可以得到不同的結果。分支結構包括單分支語句 if else語句 和多分支結構 switch語句 迴圈結構迴圈結構是指對於一些...

Go 程式流程控制

語法 switch表示式基本 var key byte fmt.println 請輸入個字元 a,b,c,d,e,f,g fmt.scanf c key switch key switch 的使用的注意事項和細節 case switch後是乙個表示式 即 常量值 變數 乙個有返回值的函式等都可以 c...

Go語言 流程控制

if else分支判斷 if condition1 if condition1 else if condition1 else if condition2 else if condition3 else 練習 package main import fmt func main else 練習 寫乙個...