package main
import(
"fmt"
)
func main(){
/*
0 0 0 0 0 0
0 0 1 0 0 0
0 2 0 3 0 0
0 0 0 0 0 0
*/
var arr [4][6]int
arr[1][2] = 1
arr[2][1] = 2
arr[2][3] = 3
for i := 0; i < 4; i++{
for j := 0; j < 6; j++{
(arr[i][j]," ")
}
()
}
/*
结果
0 0 0 0 0 0
0 0 1 0 0 0
0 2 0 3 0 0
0 0 0 0 0 0
*/
//二维数组 四种声明方式
//1、
var arr1 [2][3]int = [2][3]int{{1,2,3},{4,5,6}}
(arr1)//[[1 2 3] [4 5 6]]
//2、
var arr2 [2][3]int = [...][3]int{{1,2,3},{4,5,6}}
(arr2)//[[1 2 3] [4 5 6]]
//3、
var arr3 = [2][3]int{{1,2,3},{4,5,6}}
(arr3)//[[1 2 3] [4 5 6]]
//4、
var arr4 = [...][3]int{{1,2,3},{4,5,6}}
(arr4)//[[1 2 3] [4 5 6]]
//二维数组的便利
var arr5 = [...][3]int{{1,2,3},{4,5,6}}
//双层 for 循环遍历
for i := 0; i < len(arr5); i++{
for j := 0; j < len(arr5[i]); j++{
("%v\t",arr5[i][j])
}
()
}
/*
结果
1 2 3
4 5 6
*/
//for - range()循环遍历
for index,value := range arr5{
for index1,value1 := range value{
("arr5[%v][%v]=%v\t",index,index1,value1)
}
()
}
/*
结果
arr5[0][0]=1 arr5[0][1]=2 arr5[0][2]=3
arr5[1][0]=4 arr5[1][1]=5 arr5[1][2]=6
*/
//二维数组案例:
//定义二维数组,用于保存三个班,每个班五名同学成绩,
//并求出每个班级平均分、以及所有班级平均分
var arrTotal [3][5]int
var sumTotal float64 = 0.0
for i := 0; i < len(arrTotal); i++{
var sumTotal1 float64 = 0.0
for j := 0; j < len(arrTotal[i]); j++{
("请输入:第 %v 班 的 第 %v 个 学生的成绩",i+1,j+1)
(&arrTotal[i][j])
sumTotal1 += float64(arrTotal[i][j])
}
sumTotal += sumTotal1
("第%d班级的总分%v,平均分%v\n",i+1,sumTotal1,sumTotal1 / float64(len(arrTotal[i])))
}
("所有班级的总分%v,所有班级平均分%v\n",sumTotal,sumTotal/15)
/*
请输入:第 1 班 的 第 1 个 学生的成绩1
请输入:第 1 班 的 第 2 个 学生的成绩1
请输入:第 1 班 的 第 3 个 学生的成绩1
请输入:第 1 班 的 第 4 个 学生的成绩1
请输入:第 1 班 的 第 5 个 学生的成绩1
第1班级的总分5,平均分1
请输入:第 2 班 的 第 1 个 学生的成绩2
请输入:第 2 班 的 第 2 个 学生的成绩2
请输入:第 2 班 的 第 3 个 学生的成绩2
请输入:第 2 班 的 第 4 个 学生的成绩2
请输入:第 2 班 的 第 5 个 学生的成绩2
第2班级的总分10,平均分2
请输入:第 3 班 的 第 1 个 学生的成绩3
请输入:第 3 班 的 第 2 个 学生的成绩3
请输入:第 3 班 的 第 3 个 学生的成绩3
请输入:第 3 班 的 第 4 个 学生的成绩3
请输入:第 3 班 的 第 5 个 学生的成绩3
第3班级的总分15,平均分3
所有班级的总分30,所有班级平均分2
*/
}