中文字幕一区二区人妻电影,亚洲av无码一区二区乱子伦as ,亚洲精品无码永久在线观看,亚洲成aⅴ人片久青草影院按摩,亚洲黑人巨大videos

Go 語(yǔ)言向函數(shù)傳遞數(shù)組

Go 語(yǔ)言數(shù)組Go 語(yǔ)言數(shù)組

如果你想向函數(shù)傳遞數(shù)組參數(shù),你需要在函數(shù)定義時(shí),聲明形參為數(shù)組,我們可以通過以下兩種方式來聲明:

方式一

形參設(shè)定數(shù)組大小:

void myFunction(param [10]int)
{
.
.
.
}

方式二

形參未設(shè)定數(shù)組大?。?/p>

void myFunction(param []int)
{
.
.
.
}

實(shí)例

讓我們看下以下實(shí)例,實(shí)例中函數(shù)接收整型數(shù)組參數(shù),另一個(gè)參數(shù)指定了數(shù)組元素的個(gè)數(shù),并返回平均值:

實(shí)例

func getAverage(arr []int, size int) float32
{
? ?var i int
? ?var avg, sum float32 ?

? ?for i = 0; i < size; ++i {
? ? ? sum += arr[i]
? ?}

? ?avg = sum / size

? ?return avg;
}

接下來我們來調(diào)用這個(gè)函數(shù):

實(shí)例

package main

import "fmt"

func main() {
? ?/* 數(shù)組長(zhǎng)度為 5 */
? ?var ?balance = [5]int {1000, 2, 3, 17, 50}
? ?var avg float32

? ?/* 數(shù)組作為參數(shù)傳遞給函數(shù) */
? ?avg = getAverage( balance, 5 ) ;

? ?/* 輸出返回的平均值 */
? ?fmt.Printf( "平均值為: %f ", avg );
}
func getAverage(arr [5]int, size int) float32 {
? ?var i,sum int
? ?var avg float32 ?

? ?for i = 0; i < size;i++ {
? ? ? sum += arr[i]
? ?}

? ?avg = float32(sum) / float32(size)

? ?return avg;
}

以上實(shí)例執(zhí)行輸出結(jié)果為:

平均值為: 214.399994

以上實(shí)例中我們使用的形參并未設(shè)定數(shù)組大小。

浮點(diǎn)數(shù)計(jì)算輸出有一定的偏差,你也可以轉(zhuǎn)整型來設(shè)置精度。

實(shí)例

package main
import (
? ? "fmt"
)
func main() {
? ? a := 1.69
? ? b := 1.7
? ? c := a * b ? ? ?// 結(jié)果應(yīng)該是2.873
? ? fmt.Println(c) ?// 輸出的是2.8729999999999998
}

設(shè)置固定精度:

實(shí)例

package main
import (
? ? "fmt"
)
func main() {
? ? a := 1690 ? ? ? ? ? // 表示1.69
? ? b := 1700 ? ? ? ? ? // 表示1.70
? ? c := a * b ? ? ? ? ?// 結(jié)果應(yīng)該是2873000表示 2.873
? ? fmt.Println(c) ? ? ?// 內(nèi)部編碼
? ? fmt.Println(float64(c) / 1000000) // 顯示
}

Go 語(yǔ)言數(shù)組Go 語(yǔ)言數(shù)組

其他擴(kuò)展