一、if条件判断
代码:
package main
import "fmt"
func main() {
//if 条件判断
score := 50
judgingGrades(score)
}
/*
*
go语言中 if的用法
*/
func judgingGrades(score int) {
if score >= 90 {
fmt.Println("优等生")
} else if score >= 80 || score >= 70 {
fmt.Println("中等生")
} else if score >= 60 {
fmt.Println("刚好及格")
} else {
fmt.Println("差生")
}
}
二、for循环
package main
import (
"fmt"
)
func main() {
/**
go语言中只有 for循环
没有 while while -true 这样的 在go语言中 都用 go来写了
*/
fmt.Println("-------------------for循环写法------------------")
// 第一种 写法
var i int
for i = 0; i <= 100; i++ {
//如果 i 够了100的话 就换行输出
if i == 100 {
fmt.Println(i)
} else {
fmt.Print(i)
}
}
//第二种写法
for ; i <= 100; i++ {
//如果 i 够了100的话 就换行输出
if i == 100 {
fmt.Println(i)
} else {
fmt.Print(i)
}
}
//第三种写法
for j := 0; j <= 100; j++ {
fmt.Print(j)
}
fmt.Println("------------------- while-true写法------------------")
var c int
for c < 3 {
fmt.Println("循环了几次呢", c)
c++
}
fmt.Println("-------------------死循环写法------------------")
//for {
// //死循环就是不叫条件
// fmt.Println("死循环----")
//}
fmt.Println("-----------------------------------------for循环求 1-100的和")
var sum1 int
for a := 0; a <= 100; a++ {
sum1 += a
}
fmt.Println("1-100的和是", sum1)
fmt.Println("-----------------------------------------for循环 九九乘法表")
for t := 1; t <= 9; t++ {
for y := 1; y <= t; y++ {
fmt.Printf("%d*%d=%d ", t, y, t*y)
}
fmt.Println()
}
// 相当于 java 里面的 foreach
// 语法 for index, value := range 集合对象,字符串
//
fmt.Println("----------------------------------------- for循环遍历对象")
name := "this is a pig 中文"
for index, value := range name {
fmt.Printf("%d,%c \n", index, value)
}
// ---------------------------------------------------- for循环退出
// break 和
for i := 0; i < 100; i++ {
//如果 i ==9的话 就跳过9 进下一次循环
if i == 9 {
continue
}
// 如果 i ==10的话 就跳出循环 不走了就
fmt.Print(i)
if i == 10 {
break
}
}
}
三、switch
package main
import "fmt"
/*
*
switch var1 {
case val1:
.....
case val2:
.....
default:
.....
}
*/
func main() {
verSocre(91)
var level int
level = 2
switch level {
case 1:
fmt.Println("省级")
case 2:
fmt.Println("市级")
default:
fmt.Println("其他级别")
}
}
func verSocre(score int) {
switch {
case score > 90:
fmt.Println("优等生")
case score > 80:
fmt.Println("中等生")
case score > 70:
fmt.Println("中等生")
default:
fmt.Println("差等生")
}
}
四、goto语句
package main
import "fmt"
/*
*
goto 语句 可以让我们的代码 调到指定的代码块中运行,灵活度很高
一般情况下很少用。
goto语句使用场景最多的地方,就是对程序的错误处理
*/
func main() {
// 假如现在让实现 这么一个场景 当 j == 2的时候 整个循环都不走了
// 如果我们使用 break的话 他跳出的是 当前循环 并没有都跳出去 所以这里使用 goto
for i := 0; i < 5; i++ {
for j := 0; j < 4; j++ {
if j == 2 {
//break
goto over
}
fmt.Println(i, j)
}
}
over:
fmt.Println("程序马上终止完成")
}