Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Mảng đa chiều (multidimensional array) trong ngôn ngữ C

Khái niệm

C cho phép mảng 3 chiều trở lên. Giới hạn chính xác phụ thuộc vào trình biên dịch.

Cú pháp

kieu_du_lieu ten_mang[kich_thuoc1][kich_thuoc2]...[kich_thuoc_n];

Ví dụ mảng 3 chiều: int a[3][3][3]; → 27 phần tử.

Ví dụ: Tính tổng hàng và cột của ma trận 5x5

#include <stdio.h>

void main() {
    int A[5][5], i, j, row = 0, column = 0;

    printf("Nhap phan tu vao mang:\n");
    for (i = 0; i < 5; i++)
        for (j = 0; j < 5; j++) {
            printf("A[%d][%d]: ", i, j);
            scanf("%d", &A[i][j]);
        }

    // Tổng từng hàng
    for (i = 0; i < 5; i++) {
        for (j = 0; j < 5; j++)
            row += A[i][j];
        printf("Tong hang %d: %d\n", i, row);
        row = 0;
    }

    // Tổng từng cột
    for (j = 0; j < 5; j++) {
        for (i = 0; i < 5; i++)
            column += A[i][j];
        printf("Tong cot %d: %d\n", j, column);
        column = 0;
    }
}

Kết quả mẫu

Nhap phan tu vao mang:
A[0][0]: 1 ... A[4][4]: 8
Tong hang 0: 15
Tong hang 1: 22
Tong hang 2: 24
Tong hang 3: 17
Tong hang 4: 30
Tong cot 0: 12
Tong cot 1: 25
Tong cot 2: 22
Tong cot 3: 26
Tong cot 4: 23