for循环是一个循环控制结构,可以有效地编写需要执行的特定次数的循环。
语法
for循环在Go编程语言中的语法是:
复制代码 代码如下:
for [condition | ( init; condition; increment ) | Range]
{
statement(s);
}
下面是控制在一个流程的for循环:
如果condition是可用的,那么对于循环只要条件为真时执行。
如果for子句是( init; condition; increment ) 存在则
初始化(init)步骤首先被执行,并且只有一次。这一步可以声明和初始化任何循环控制变量。不需要把一个声明在这里,只要有一个分号出现。
接着,条件(condition)进行了评估计算。如果为true,则执行循环体。如果是假的,循环体不执行,只是之后的for循环流量控制跳转到下一条语句。
for循环执行主体之后,控制流跳转回到增量(increment)语句。此语句可以让你更新任何循环控制变量。这个语句可以留空,只要一个分号出现条件后。
condition现在重新评估计算。如果为true,循环执行的过程中重复(循环体,然后增加步,然后再次条件)。之后如果条件为假,则循环终止。
如果range可用,然后循环执行的范围内的每个项目。
流程图:
例子:
复制代码 代码如下:
package main
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);
}
例子:
下面的程序使用嵌套for循环从2至100找出的素数:
复制代码 代码如下:
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
Golang,for
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
更新日志
- 黄乙玲1988-无稳定的爱心肝乱糟糟[日本东芝1M版][WAV+CUE]
- 群星《我们的歌第六季 第3期》[320K/MP3][70.68MB]
- 群星《我们的歌第六季 第3期》[FLAC/分轨][369.48MB]
- 群星《燃!沙排少女 影视原声带》[320K/MP3][175.61MB]
- 乱斗海盗瞎6胜卡组推荐一览 深暗领域乱斗海盗瞎卡组分享
- 炉石传说乱斗6胜卡组分享一览 深暗领域乱斗6胜卡组代码推荐
- 炉石传说乱斗本周卡组合集 乱斗模式卡组最新推荐
- 佟妍.2015-七窍玲珑心【万马旦】【WAV+CUE】
- 叶振棠陈晓慧.1986-龙的心·俘虏你(2006复黑限量版)【永恒】【WAV+CUE】
- 陈慧琳.1998-爱我不爱(国)【福茂】【WAV+CUE】
- 咪咕快游豪礼放送,百元京东卡、海量欢乐豆就在咪咕咪粉节!
- 双11百吋大屏焕新“热”,海信AI画质电视成最大赢家
- 海信电视E8N Ultra:真正的百吋,不止是大!
- 曾庆瑜1990-曾庆瑜历年精选[派森][WAV+CUE]
- 叶玉卿1999-深情之选[飞图][WAV+CUE]