# 运算符
符号 | 描述 |
---|---|
+ | 变量相加 |
- | 数字相减 |
* | 数字相乘 |
/ | 数字相除 |
% | 数字求余 |
++ | 自加 |
-- | 自减 |
一个实例:
package main
import "fmt"
func main() {
var a int = 21
var b int = 10
var c int
c = a + b
fmt.Printf("第一行 - c 的值为 %d\n", c )
c = a - b
fmt.Printf("第二行 - c 的值为 %d\n", c )
c = a * b
fmt.Printf("第三行 - c 的值为 %d\n", c )
c = a / b
fmt.Printf("第四行 - c 的值为 %d\n", c )
c = a % b
fmt.Printf("第五行 - c 的值为 %d\n", c )
a++
fmt.Printf("第六行 - c 的值为 %d\n", a )
a--
fmt.Printf("第七行 - c 的值为 %d\n", a )
}
# 分支结构
# 单分支
# if结构
package main
import "fmt"
func main() {
var a int
fmt.Scanln(&a)
if a > 10{
fmt.Println("a大于10")
}
}
if表达式格式如下: if 布尔表达式 {语句}
为真执行语句,为假不执行
# 双分支
# if else结构
package main
import "fmt"
func main() {
var a int
fmt.Scanln(&a)
if a > 10 {
fmt.Println("a大于10")
} else {
fmt.Println("a小于等于10")
}
}
大括号后接else即可,无需条件
当布尔表达式为假时,执行else代码块
# 多分支
# if else if结构
package main
import "fmt"
func main() {
var a int
fmt.Scanln(&a)
if a > 10 {
fmt.Println("a大于10")
} else if a > 5 {
fmt.Println("a大于5")
} else if a > 0 {
fmt.Println("a大于0")
} else {
fmt.Println("a小于0")
}
}
一个分支结构可以有零、一或无数个else if代码块
当if的表达式不满足时,继续检查else if的表达式,都不满足执行else
一个if else结构至多执行一个代码块,多个代码块需要if...if...结构
# switch结构
package main
import "fmt"
func main() {
var a int
fmt.Scanln(&a)
switch a {
case 5:
fmt.Println("a为5")
case 10:
fmt.Println("a为10")
default:
fmt.Println("a不为5或10")
}
}
switch的语法如下:
switch anyvar {
case var1:
// code
case var2:
// code
default:
// code
}
switch...case...不是通过缩进识别结构,是在这个case到下个case之间的代码
都视作一个代码块
case后是一个准确的变量/值,不是布尔表达式
如果没有任何一个case执行,则执行default代码块
select结构放在信道里将,这里先跳过