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

Xử lý mảng 1 chiều và 2 chiều trong ngôn ngữ C

Mảng 1 chiều (1D Array)

Nhập (đọc):

int num[5], i;
for(i=0;i<5;i++) scanf("%d", &num[i]);

Xuất (ghi):

for(i=0;i<5;i++) printf("%d", num[i]);

Ví dụ: In ngược mảng

#include <stdio.h>
void main() {
    int array[5], i;
    printf("Nhập 5 phần tử:\n");
    for(i=0;i<5;i++) { printf("array[%d]: ", i); scanf("%d", &array[i]); }
    printf("Mảng ngược:\n");
    for(i=4;i>=0;i--) printf("array[%d]: %d\n", i, array[i]);
}

Mảng 2 chiều (2D Array)

Nhập:

int a[4][3], i, j;
for(i=0;i<4;i++) for(j=0;j<3;j++) scanf("%d", &a[i][j]);

Xuất:

for(i=0;i<4;i++) for(j=0;j<3;j++) printf("%d", a[i][j]);

Ví dụ: Cộng và nhân hai ma trận 2x3

#include <stdio.h>
void main() {
    int A[2][3], B[2][3], sum[2][3], prod[2][3], i, j;
    // Nhập A
    for(i=0;i<2;i++) for(j=0;j<3;j++) { printf("A[%d][%d]: ", i,j); scanf("%d",&A[i][j]); }
    // Nhập B
    for(i=0;i<2;i++) for(j=0;j<3;j++) { printf("B[%d][%d]: ", i,j); scanf("%d",&B[i][j]); }
    // Tính tổng và tích
    for(i=0;i<2;i++) for(j=0;j<3;j++) {
        sum[i][j] = A[i][j] + B[i][j];
        prod[i][j] = A[i][j] * B[i][j];
    }
    // In kết quả
    printf("Tổng:\n"); for(i=0;i<2;i++) { for(j=0;j<3;j++) printf("%d\t", sum[i][j]); printf("\n"); }
    printf("Tích:\n"); for(i=0;i<2;i++) { for(j=0;j<3;j++) printf("%d\t", prod[i][j]); printf("\n"); }
}