zoukankan      html  css  js  c++  java
  • Golang基础——数据类型:数组

    数组:存储空间连续。

    // 数组长度必须是常量
    // 索引不能为 -1
    // 数组传参是值传递
    
    var a [10]int  // 定义一个整形数组
    a[0] = 11  // 赋值
    fmt.Println(a[0])
    
    var b [5]int = [5]int{1, 2, 33, 4, 5}
    fmt.Println(b)
    
    var c = [5]int{1, 2, 3, 4, 5}
    fmt.Println(c)
    
    d := [5]int{1, 2, 4}
    fmt.Println(d)
    
    e := [5]int{3: 4, 2: 1} // 指定2,3位置的元素值
    fmt.Println(e)
    
    f := [...]int{1, 2, 3, 4, 5} // 通过元素数量初始化长度
    fmt.Println(f)
    fmt.Printf("%T
    ", f)
    
    
    11
    [1 2 33 4 5]
    [1 2 3 4 5]
    [1 2 4 0 0]
    [0 0 1 4 0]
    [1 2 3 4 5]
    [5]int
    
    
    var aa = [10]int{1, 2, 31, 4, 25, 6, 37, 8, 59, 10}
    min_num := aa[0]
    max_num := aa[0]
    sum := 0
    for _, num := range aa {
        if num < min_num {
            min_num = num
        }
        if num > max_num {
            max_num = num
        }
        sum += num
    }
    fmt.Println("最小值:", min_num)
    fmt.Println("最大值:", max_num)
    fmt.Println("平均值:", sum/len(aa))
    
    // 冒泡排序
    for j := 0; j < len(aa)-1; j++ {
        for i := 0; i < len(aa)-j-1; i++ {
            if aa[i] > aa[i+1] {
                aa[i], aa[i+1] = aa[i+1], aa[i]
            }
        }
    }
    fmt.Println(aa)
    

    二维数组:

    	var avc [2][3]int // 二维数组:2行3列
    	fmt.Println(avc)
    	ccc := [2][3]int{{2, 3, 5}, {2, 3, 4}}
    	fmt.Println(ccc)
    
  • 相关阅读:
    bzoj 1103
    [POI] 大都市meg
    [Luogu] 网络
    [Luogu] 1600
    [Luogu] 树状数组
    [Luogu] 软件包管理器
    [Luogu] 遥远的国度
    [USACO5.5] 矩形周长Picture
    [Luogu] 魔板
    【NOIP2015】斗地主
  • 原文地址:https://www.cnblogs.com/pythonwl/p/14540583.html
Copyright © 2011-2022 走看看