Go语言入门10---if分支语言与switch语句|Go主题月

190 阅读1分钟

if分支语言

顺序结构

   条件语句:if
   语法格式:
       if 条件表达式{
       }
       
package main

import "fmt"

func main() {

	num:=11
	if num>10{
		fmt.Println("大于十")
	}
	
}

image.png

if...else语句
package main

import "fmt"

func main() {
	score:=0
	fmt.Scanf("%d",&score)
	if score>=60 {
		fmt.Println("成绩及格")
	} else{
		fmt.Println("不及格")
	}
}

image.png

注意点:{ 必须和条件在一行,else与 } 必须在一行,if与else必须执行其中之一

    if语句的嵌套
    package main

import "fmt"

func main() {

sex:="dasfa"
if sex=="男"{
	fmt.Println("是男")
}else{
	if sex=="女" {
		fmt.Println("是女")
	}else {
		fmt.Println("不确定了")
	}
}
}
也可else if

image.png

       if的变形写法
       	if num:=4;num>0 {
	fmt.Println("是正数")
        }else if(num<0){
	fmt.Println("是负数")
        }

选择结构

    switch 语句:
    语法结构:
        switch 变量名{
            case 数值1:分支1
            case 数值2:分支2
            case 数值3:分支3
            .....
            default:
                最后一个分支
            }
   
package main

import "fmt"

func main() {

	num:=3
	switch num {
	case 1:
		fmt.Println("第一季度")
	case 2:
		fmt.Println("第二季度")
	case 3:
		fmt.Println("第三季度")
	case 4:
		fmt.Println("第四季度")
	}
        
}

image.png

变形写法1:
	score:=88
	switch {
	case score>=0&&score<60:
		fmt.Println("不及格")
	case score>=60&&score<70:
		fmt.Println("及格")
	case score>=70&&score<80:
		fmt.Println("中等")
	case score>=80&&score<90:
		fmt.Println("良好")
	case score>=90:
		fmt.Println("优秀")
	}
变形写法2:
    	lettre:="A"
	switch lettre {
	case "A","E","I","O","U":
		fmt.Println("是元音")
	case "M","N":
		fmt.Println("M或N")
	default:
		fmt.Println("其他")
	}
变形写法3:        
        可在switch后初始化

image.png