for循環是一個循環控制結構,可以有效地編寫需要執行的特定次數的循環。
語法
for循環在Go編程語言中的語法是:
for [condition | ( init; condition; increment ) | Range]
{
statement(s);
}
如果condition是可用的,那么對于循環只要條件為真時執行。
如果for子句是( init; condition; increment ) 存在則
初始化(init)步驟首先被執行,并且只有一次。這一步可以聲明和初始化任何循環控制變量。不需要把一個聲明在這里,只要有一個分號出現。
接著,條件(condition)進行了評估計算。如果為true,則執行循環體。如果是假的,循環體不執行,只是之后的for循環流量控制跳轉到下一條語句。
for循環執行主體之后,控制流跳轉回到增量(increment)語句。此語句可以讓你更新任何循環控制變量。這個語句可以留空,只要一個分號出現條件后。
condition現在重新評估計算。如果為true,循環執行的過程中重復(循環體,然后增加步,然后再次條件)。之后如果條件為假,則循環終止。
如果range可用,然后循環執行的范圍內的每個項目。
流程圖:
例子:
import "fmt"
func main() {
var b int = 15
var a int
numbers := [6]int{1, 2, 3, 5}
/* for loop execution */
for a := 0; a < 10; a++ {
fmt.Printf("value of a: %d/n", a)
}
for a < b {
a++
fmt.Printf("value of a: %d/n", a)
}
for i,x:= range numbers {
fmt.Printf("value of x = %d at %d/n", x,i)
}
}
- value of a: 0
- value of a: 1
- value of a: 2
- value of a: 3
- value of a: 4
- value of a: 5
- value of a: 6
- value of a: 7
- value of a: 8
- value of a: 9
- value of a: 1
- value of a: 2
- value of a: 3
- value of a: 4
- value of a: 5
- value of a: 6
- value of a: 7
- value of a: 8
- value of a: 9
- value of a: 10
- value of a: 11
- value of a: 12
- value of a: 13
- value of a: 14
- value of a: 15
- value of x = 1 at 0
- value of x = 2 at 1
- value of x = 3 at 2
- value of x = 5 at 3
- value of x = 0 at 4
- value of x = 0 at 5
Go語言嵌套for循環
Go編程語言允許使用一個循環內嵌套另一個循環。下面的內容展示幾個例子來說明這個概念。
語法
在Go語言中嵌套for循環語句的語法如下:
for [condition | ( init; condition; increment ) | Range]
{
for [condition | ( init; condition; increment ) | Range]
{
statement(s);
}
statement(s);
}
package main
import "fmt"
func main() {
/* local variable definition */
var i, j int
for i=2; i < 100; i++ {
for j=2; j <= (i/j); j++ {
if(i%j==0) {
break; // if factor found, not prime
}
}
if(j > (i/j)) {
fmt.Printf("%d is prime/n", i);
}
}
}
- 2 is prime
- 3 is prime
- 5 is prime
- 7 is prime
- 11 is prime
- 13 is prime
- 17 is prime
- 19 is prime
- 23 is prime
- 29 is prime
- 31 is prime
- 37 is prime
- 41 is prime
- 43 is prime
- 47 is prime
- 53 is prime
- 59 is prime
- 61 is prime
- 67 is prime
- 71 is prime
- 73 is prime
- 79 is prime
- 83 is prime
- 89 is prime
- 97 is prime
新聞熱點
疑難解答