Go語言學習筆記 —— for循環問題

package main

import "fmt"
for 循環的基本語法:
   for 循環變量初始化;循環條件;循環變量迭代{
      // 循環體部分
   循環操做(語句)
}

對語法格式說明:
對for循環來講,有四個因素:
循環變量初始化
循環條件
循環操做(語句),也叫作循環體
循環變量迭代
func main01()  {

   // golang中,有循環控制語句來處理循環的執行某段代碼的方法——————>for循環
   // for 循環的快速入門
   for i := 1;i <= 20 ; i++ {
      fmt.Println("Hello Golang",i)
   }


   // for 循環的第二種使用方式
   j := 1 // 循環變量初始化
   for j <= 5{ // 循環條件
      fmt.Println("Gooogle,golang",j)
      j++ // 循環變量迭代
   }

   // for循環的第三種形式,可是會容易形成死循環,因此會和break一塊兒使用,避免形成死循環。
   f := 1
   for{ //等價於 for ; ;{}
      if f < 5 {
         fmt.Println("gogogogo",f)
      }else {}
      break // 直接跳出整個for循環過程

   }

   // 遍歷字符串方式遍歷

   var str string = "Google Golang"
   for k := 0;k <=len(str);k++{
      fmt.Printf("%c\n",str[k])
   }

   fmt.Println()

   // 使用for...range的方式進行字符串的遍歷
   str1  := "Index,golang"
   for index,val := range str1{
      fmt.Printf("index = %d, value = %c \n",index,val)
   }
}
/*for循環執行的順序說明
1)執行循環變量初始化
2)執行循環條件
3)若是循環條件爲真,執行循環操做。
4)執行循環變量迭代
5)知道循環條件爲false時,就直接退出for循環
 */
/*
for循環的注意事項和具體細節
1)循環條件是返回一個布爾值的表達式
2)for循環的第二種使用方式

for 循環判斷語句{
   // 循環執行語句
}
將變量初始化和變量迭代寫到其餘的位置。



3)for循環的第三種使用方式:
for{ 等價於:for ::{}是一個無限循環,一般是須要配合break語句使用。
 // 循環執行語句
}

4)Golang 提供for...range的方式,能夠方便遍歷字符串和數組

對於for...range遍歷方式而言,是按照字符的遍歷,若是字符中含有中文,也是沒問題。

 */

// 對於中文而言,若是字符串中含有中文,使用傳統方式的遍歷字符串方式,
// 會發生錯誤,會出現亂碼,緣由:是傳統的對字符串的遍歷是按照字節來遍歷,
// 而一個漢字在utf-18中的編碼是對應3個字節。


// for循環的練習題

// 1.打印1-100之間全部是9的倍數的個數及總和。


func main02()  {

   // 分析思路
   // 1.使用for循環對 max 進行遍歷
   // 2.當一個數 % 9 ==0 就是9的倍數
   // 3.須要聲明兩個變量count 和 sum 來保存個數和總和
   // 4.

   var max uint64 = 100
   var count uint64 = 0
   var sum  uint64 = 0
   var i uint64 = 1

   for ;i <= max; i++{
      if i % 9 == 0 {
         count++
         sum += i
      }
   }
   fmt.Printf("count = %v,sum = %v\n",count,sum)
}



//2.完成下面的表達式輸出,6是可變的
/*
0 + 6 = 6
1 + 5 = 6
2 + 4 = 6
3 + 3 = 6
4 + 2 = 6
5 + 1 = 6
6 + 0 = 6

 */

// 代碼實例:
func main()  {

   var n int
   fmt.Println("input n Value:",n)
   fmt.Scan(&n)

   for i := 0;i <= n ; i++ {
      fmt.Printf("%v + %v = %v \n",i,n-i,n)
   }
}


Go語言學習筆記來源:尚硅谷視頻課程golang

相關文章
相關標籤/搜索