1.流程控制
- 控制代码的执行顺序,根据基本结构实现复杂的程序流程控制。基本结构分别有顺序结构、选择结构和循环结构。
2.顺序结构
- 顺序结构按照一步步写出的语句执行,当没有别的流程控制语句时程序可以从上到下依次执行。
3.选择结构
- 选择结构由if语句和switch语句实现,它们分别是条件分支和多分支语句。
4.循环结构
- 条件满足的情况,会去循环0 - N次:for
if
- 条件分支语句是根据表达式的真假决定程序的走向。其中的判断条件是控制程序执行的关键,用 if...else来表示。格式如下:* <font style="color:rgb(51, 51, 51);">if 单独存在</font>* <font style="color:rgb(51, 51, 51);">if ... else</font>* <font style="color:rgb(51, 51, 51);">if ... elseif ... else if ... else</font>
func main() {var num int = 15// ifif num > 100{fmt.Println("num>100")}if num < 100 {fmt.Println("num<100")}//if ... elseif num>100{fmt.Println("num>100")}else{fmt.Println("num<100")}// if ... elseif ... else if ... elsevar score intfmt.Println("请输入数字:")fmt.Scan(&score) //用于控制台接收输入if score>=90 && score<=100{fmt.Println("A")}else if score>=80 &&score<=90{fmt.Println("B")}else if score>=70 &&score<=80{fmt.Println("C")}else if score>=60 &&score<=70{fmt.Println("D")}else {fmt.Println("E")}}
**switch**
1.基本使用switch…case…defalut
score := 100switch score{case 100:fmt.Println(score) //输出100case 90:fmt.Println(score)default:fmt.Println(score)}//省略条件 默认为trueswitch {case true:fmt.Println("true") //输出truecase false:fmt.Println("false")default:fmt.Println("defalut")}
2.需要多个条件输出,case穿透:fallthrough
f := trueswitch f{case true:fmt.Println("true") //输出truefallthrough //强行执行下一个casecase false:fmt.Println("false") //输出false,fallthrough //强行执行下一个casecase true:fmt.Println("true2") //输出true2default:fmt.Println("defalut")}
3.终止case:break
f := trueswitch f{case true:fmt.Println("true") //输出truefallthrough //强行执行下一个casecase false:fmt.Println("false") //输出true2fallthrough //强行执行下一个casecase true:if f==true{break //满足条件 终止输出}fmt.Println("true2")default:fmt.Println("defalut")}
for循环
for i:=0;i<=10;i++{
fmt.Println(“xxx”)
}
func main() {sum:=0 //接收最后的结果for i := 0; i <=10 ; i++ {sum+=i}fmt.Println(sum)}
for循环的结束与终止:continue 与 break
continue 结束当前循环,继续下一次循环
break 终止整个循环
for i:=0;i<=10;i++{fmt.Println(i)if i==5{fmt.Println("i=5,停止循环")break}}for i := 0; i < 10; i++ {if i==5 {fmt.Println("跳出当前循环,不往下执行,继续下一个循环")continue}fmt.Println(i)}
func main() {var admin stringvar pass intsum := 0 //记录登录错误次数for {//接收输入的用户名密码fmt.Println("请输入用户名:")fmt.Scan(&admin)fmt.Println("请输入密码:")fmt.Scan(&pass)if admin == "admin" && pass == 123 {fmt.Println("登录成功")break} else {fmt.Println("请重新输入用户名和密码")sum++if sum == 3 {fmt.Println("已连续输入错误3次,已退出")break}}}}
