亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

c語言中二維數組如何使用

發布時間:2020-09-22 14:31:21 來源:億速云 閱讀:153 作者:小新 欄目:編程語言

小編給大家分享一下c語言中二維數組如何使用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

二維數組定義的一般形式

類型說明符 數組名[ 常量表達式][ 常量表達式];

例如:

int arr[3][4]

表示定義了一個 3×4,即 3 行 4 列總共有 12 個元素的數組 a。這 12 個元素的名字依次是:a[0][0]、a[0][1]、a[0][2]、a[0][3];a[1][0]、a[1][1]、a[1][2]、a[1][3];a[2][0]、a[2][1]、a[2][2]、a[2][3]。

與一維數組一樣,行序號和列序號的下標都是從 0 開始的。元素 a[i][j] 表示第 i+1 行、第 j+1 列的元素。數組 int a[m][n] 最大范圍處的元素是 a[m–1][n–1]。所以在引用數組元素時應該注意,下標值應在定義的數組大小的范圍內。

此外,與一維數組一樣,定義數組時用到的“數組名[常量表達式][常量表達式]”和引用數組元素時用到的“數組名[下標][下標]”是有區別的。前者是定義一個數組,以及該數組的維數和各維的大小。而后者僅僅是元素的下標,像坐標一樣,對應一個具體的元素。

二維數組始化
1) 分行給二維數組賦初值,如:

int a[3][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}};

這種賦初值的方法比較直觀,把每行看作一個元素,按行賦初值。
2) 也可以將所有數據寫在一個花括號內,按數組排列的順序對各元素賦初值。比如:

int a[3][4] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};

3) 也可以只對部分元素賦初值。比如:

int a[3][4] = {{1, 2}, {5}, {9}};

4) 如果在定義數組時就對全部元素賦初值,即完全初始化,則第一維的長度可以不指定,但第二維的長度不能省。比如:

int a[3][4] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};

等價于:

int a[][4] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};

系統會根據數據總數和第二維的長度算出第一維的長度。但這種省略的寫法幾乎不用,因為可讀性差。
5) 二維數組“清零”,里面每一個元素都是零,如下:

int a[3][4]={0};

二維數組如何輸入輸出

在一維數組中是用一個 for 循環進行輸入輸出,而二維數組元素的輸入輸出要使用兩個 for 循環嵌套。

下面有一個小例題,大家可以用來練練手:

//輸入一個3行4列的二維數組的元素值
//調用一個自定義函數求二維數組每列元素中的最小值的和值
//和值通過返回值傳回主函數輸出
#include "stdio.h"
int sum(int arr[3][4])//定義一個二維數組
{
    int sum = 0;
    for (int i = 0; i < 4; i++)
    {
        int min = arr[0][i];
        for (int j = 1; j < 3; j++)//找出每列最小元素
            if (min > arr[j][i]) 
                min = arr[j][i];
        sum += min;//每列最小元素相加
    }
    return sum;
}
int main()
{
    int arr[3][4];
    for (int i = 0; i < 3; i++)  //行
        for (int j = 0; j < 4; j++)//列
            scanf("%d", &arr[i][j]); //輸入數組元素
    int r = sum(arr);
    printf("%d\n", r);//輸出每列最小元素之和
    return 0;
}

實現結果:

1 2 3 4
0 2 5 9
0 1 3 -1
3

以上是c語言中二維數組如何使用的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

白水县| 江油市| 靖州| 巫溪县| 万载县| 海晏县| 涟源市| 阿克陶县| 甘泉县| 台山市| 神池县| 台东市| 孟津县| 崇文区| 通海县| 嘉善县| 公安县| 攀枝花市| 苏尼特右旗| 宁津县| 赤水市| 贺兰县| 靖宇县| 南昌县| 淮南市| 咸丰县| 丰城市| 东山县| 抚松县| 房产| 临潭县| 遂宁市| 固镇县| 贡山| 镇康县| 金乡县| 长沙县| 京山县| 大港区| 灵山县| 新疆|