中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

深入解析Go語言中for循環的寫法

發布時間:2020-08-27 10:52:11 來源:腳本之家 閱讀:256 作者:goldensun 欄目:編程語言

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可用,然后循環執行的范圍內的每個項目。

流程圖:

深入解析Go語言中for循環的寫法

例子:

復制代碼 代碼如下:

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

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

贵阳市| 凤山市| 东兴市| 南江县| 六盘水市| 柳河县| 依安县| 乐清市| 阜新| 蒙阴县| 长武县| 龙海市| 达孜县| 全南县| 杂多县| 嘉定区| 资兴市| 祥云县| 新田县| 四会市| 宣汉县| 西宁市| 甘孜| 巩留县| 区。| 若尔盖县| 竹北市| 福泉市| 蒲城县| 和硕县| 墨竹工卡县| 格尔木市| 和龙市| 新和县| 建瓯市| 沧州市| 普兰县| 黎城县| 保靖县| 喀什市| 延津县|