go语言第二章(for循环)
简介:在 Go 语言中没有 while 循环结构。但是,可以通过 for 循环和 break 语句来实现类似的功能。
首先没有编译器的可以通过这个网址进行敲代码:Lightly
for
在 Go 语言中,for 循环是一种用来重复执行代码块的结构。它的基本语法如下:
for 初始化语句; 条件表达式; 后置语句 {
// 循环体
}
其中,初始化语句在第一次循环前执行,通常用于初始化变量;条件表达式在每次循环前求值,如果为 true,则继续执行循环体,否则跳出循环;后置语句在每次循环后执行,通常用于更新变量。
例如,以下代码使用 for 循环计算从 1 到 10 的和:
sum := 0
for i := 1; i <= 10; i++ {
sum += i
}
fmt.Println(sum) // 输出 55
在这个例子中,初始化语句为 i := 1
,将变量 i 初始化为 1;条件表达式为 i <= 10
,表示只要 i 不大于 10 就继续执行循环体;后置语句为 i++
,表示每次循环后将 i 加 1。
Go 语言的 for 循环可以有多种变形,例如:
- 可以省略初始化语句和后置语句,只保留条件表达式,实现 while 循环的功能。
i := 0
for i < 10 {
fmt.Println(i)
i++
}
- 可以省略所有语句,实现死循环的功能。
for {
fmt.Println("无限循环")
}
- 可以使用 range 关键字来遍历数组、切片、映射等集合类型。
arr := []int{1, 2, 3}
for index, value := range arr {
fmt.Printf("索引:%d,值:%d\n", index, value)
}
除了以上常用的形式外,Go 语言的 for 循环还支持标签语法和 continue/break/return 语句,可以实现更复杂的控制流结构。需要注意的是,在编写循环时,要注意循环条件表达式的正确性,以及避免死循环的出现。
例题
1. 打印从 1 到 10 的数字
package main
import "fmt"
func main() {
for i := 1; i <= 10; i++ {
fmt.Println(i)
}
}
2. 计算 1 到 100 的和
package main
import "fmt"
func main() {
sum := 0
for i := 1; i <= 100; i++ {
sum += i
}
fmt.Println("1到100的和为:", sum)
}
3. 打印九九乘法表
package main
import "fmt"
func main() {
for i := 1; i <= 9; i++ {
for j := 1; j <= i; j++ {
fmt.Printf("%d*%d=%d ", j, i, i*j)
}
fmt.Println()
}
}
4. 使用 for 循环遍历数组
package main
import "fmt"
func main() {
arr := []int{1, 2, 3}
for i := 0; i < len(arr); i++ {
fmt.Printf("索引:%d,值:%d\n", i, arr[i])
}
}