##Go 语言数组
#初始化数组
======================================
/*初始化数组中 {} 中的元素个数不能大于 [] 中的数字。*/
var balance = [5]float32{1000.0, 2.0, 3.4, 7.0, 50.0}
/*如果忽略 [] 中的数字不设置数组大小,Go 语言会根据元素的个数来设置数组的大小*/
var balance = [...]float32{1000.0, 2.0, 3.4, 7.0, 50.0}
======================================
#访问数组元素
======================================
package main
import "fmt"
func main() {
var n [10]int /* n 是一个长度为 10 的数组 */
var i,j int
/* 为数组 n 初始化元素 */
for i = 0; i < 10; i++ {
n = i + 100 /* 设置元素为 i + 100 */
}
/* 输出每个数组元素的值 */
for j = 0; j < 10; j++ {
fmt.Printf("Element[%d] = %d\n", j, n[j] )
}
}
======================================
#Go 语言多维数组
======================================
package main
import "fmt"
func main() {
/* 数组 - 5 行 2 列*/
var a = [5][2]int{ {0,0}, {1,2}, {2,4}, {3,6},{4,8}}
var i, j int
/* 输出数组元素 */
for i = 0; i < 5; i++ {
for j = 0; j < 2; j++ {
fmt.Printf("a[%d][%d] = %d\n", i,j, a[j] )
}
}
}
======================================
#Go 语言向函数传递数组
======================================
package main
import "fmt"
func main() {
/* 数组长度为 5 */
var balance = [5]int {1000, 2, 3, 17, 50}
var avg float32
/* 数组作为参数传递给函数 */
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
}
avg = float32(sum) / float32(size)
return avg;
}
====================================== |