switch{
case 1:
...
if(...){
break
}
fallthrough // 此时switch(1)会执行case1和case2,但是如果满足if条件,则只执行case1
case 2:
...
case 3:
}
2189go-nested-if-statements
判断用户密码输入:
package main
import"fmt"
func main(){
var a int
var b int
fmt.Printf("请输入密码: \n")
fmt.Scan(&a)
if a == 5211314 {
fmt.Printf("请再次输入密码:")
fmt.Scan(&b)
if b == 5211314 {
fmt.Printf("密码正确,门锁已打开")
}else{
fmt.Printf("非法入侵,已自动报警")
}
}else{
fmt.Printf("非法入侵,已自动报警")
}
}
2188go-if-else-statement
if ... else if ... else... 实例:
package main
import "fmt"
func main() {
var age int = 23
if age == 25 {
fmt.Println("true")
} else if age < 25 {
fmt.Println("too small")
} else {
fmt.Println("too big")
}
}
2187go-if-else-statement
寻找到 100 以内的所有的素数:
package main
import "fmt"
func main(){
// var count,c int //定义变量不使用也会报错
var count int
var flag bool
count=1
//while(count<100) { //go没有while
for count < 100 {
count++
flag = true;
//注意tmp变量 :=
for tmp:=2;tmp<count;tmp++ {
if count%tmp==0{
flag = false
}
}
// 每一个 if else 都需要加入括号 同时 else 位置不能在新一行
if flag == true {
fmt.Println(count,"素数")
}else{
continue
}
}
}
2190go-switch-statement
1. 支持多条件匹配
2. 不同的 case 之间不使用 break 分隔,默认只会执行一个 case。
3. 如果想要执行多个 case,需要使用 fallthrough 关键字,也可用 break 终止。
2189go-nested-if-statements
判断用户密码输入:
2188go-if-else-statement
if ... else if ... else... 实例:
2187go-if-else-statement
寻找到 100 以内的所有的素数:
2186go-if-statement
if 语句使用 tips:
(1) 不需使用括号将条件包含起来
(2) 大括号{}必须存在,即使只有一行语句
(3) 左括号必须在if或else的同一行
(4) 在if之后,条件语句之前,可以添加变量初始化语句,使用;进行分隔
(5) 在有返回值的函数中,最终的return不能在条件语句中