1. 程式人生 > >Go數組反轉練習

Go數組反轉練習

blog 個數 n-1 img 情況下 pro mark 講解 數組下標

package main
//要求:隨機生成5個數字,求和 並將其翻轉打印
//思路
//1.隨機生成五個數 rand.Intn()函數
//2、當我們得到隨機數後 就放到一個數組 int數組
//3、反轉打印 交換次數len/2 倒數第一個和第一個交換 。。。

import (
"math/rand"
"time"
"fmt"
)
var arrnum [5]int
var arrlen =len(arrnum) //多次調用 將其設置成全局變量
func main(){
r := rand.New(rand.NewSource(time.Now().UnixNano()))
sum := 0

for i := 0 ;i<arrlen;i++ {
arrnum[i] =r.Intn(1000)
sum += arrnum[i]
}
fmt.Println(sum)
fmt.Println(arrnum)
temp := 0 //臨時變量
for i :=0 ;i <arrlen /2;i++{
temp = arrnum[arrlen-1-i]
arrnum[arrlen-1-i] = arrnum[i]
arrnum[i] =temp

}
fmt.Println(arrnum)

}

技術分享圖片

數組使用的註意事項和細節

1) 數組是多個相同類型數據的組合,一個數組一旦聲明/定義了,其長度是固定的, 不能動態變化

2) var arr []int 這時 arr 就是一個 slice 切片,切片後面專門講解,不急哈.
3) 數組中的元素可以是任何數據類型,包括值類型和引用類型,但是不能混用。
4) 數組創建後,如果沒有賦值,有默認值(零值)
數值類型數組:默認值為 0
字符串數組: 默認值為 ""
bool 數組: 默認值為 false

5) 使用數組的步驟

  1. 聲明數組並開辟空間
    2 給數組各個元素賦值(默認零值)
    3 使用數組
    6) 數組的下標是從 0 開始的
    7) 數組下標必須在指定範圍內使用,否則報 panic:數組越界,比如 var arr [5]int 則有效下標為 0-4
    8) Go 的數組屬值類型, 在默認情況下是值傳遞, 因此會進行值拷貝。數組間不會相互影響
    9) 如想在其它函數中,去修改原來的數組,可以使用引用傳遞(指針方式)
    10) 長度是數組類型的一部分,在傳遞函數參數時 需要考慮數組的長度,看下面案例

Go數組反轉練習