1. if else
if 条件 {} else { // else必须写在这里}
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
![](https://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif)
// 写一个程序, 从终端读取输入, 并转成整数. 如果转成整数出错,// 则输出'can not convert to int', 并返回.否则输出该整数package mainimport ( "fmt" "strconv")func main() { var s string fmt.Scanf("%s", &s) res, err := strconv.Atoi(s) if err != nil { fmt.Println("can not convert to int.err: ", err) return } fmt.Println(res)}
2. swith case
swith var { case var1: case var2: case var3: default: }
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
![](https://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif)
// 猜数字, 写一个程序,随机生成一个0 到100 的整数n,// 然后用户在终端输入数字,如果和n 相等,则提示用户猜对了// 如果不相等,则提示用户,大于还是小于npackage mainimport ( "fmt" "math/rand")func main(){ n := rand.Intn(100) flag := true for flag { var number int fmt.Scanf("%d\n", &number) switch { case number == n: fmt.Println("猜对了.") flag = false case number > n: fmt.Println("大了.") case number < n: fmt.Println("小了.") } }}
3. for 语句
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
![](https://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif)
/*写一个程序, 在终端打印如下图形:AAAAAAAAAAAAAAA*/package mainimport ( "fmt" "strings")func main() { var s string = "A" for i := 1; i < 6; i++ { res := strings.Repeat(s, i) fmt.Println(res) }}
4. for range
5. break continue
package mainimport "fmt"func main(){ str := "hello, 中国" for index, value := range str { fmt.Println(index, value) // 打印的值是ASCII码 fmt.Printf("index[%d], value[%c], len[%d]\n", index, value, len([]byte(string(value)))) } for index, value := range str { if index > 2 { continue } if index > 4 { break } fmt.Println(index, value) }}
6. goto和label语句
package mainfunc main() { i := 0 HERE: print(i) i++ if i == 5 { return } goto HERE}