Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

Em cần hỏi về con trỏ mảng 2 chiều ạ

17:13 27-07-2021 550 lượt xem 5 bình luận 16:45 28-07-2021
#include <stdio.h>
#include <malloc.h>


int main()

{
    
    int row,col;
    
    printf("Nhap so dong : ");
    scanf("%d", &row);
    
    printf("Nhap so cot : ");
    scanf("%d", &col);
    
    int **arr = (int**) malloc(row * sizeof(int));  
    int i,j;
    for(i = 0; i < row; i++)
    {
        arr[i] = (int*) malloc(col * sizeof(int));;
    }
    printf("\nNhap mang : ");
    for(i = 0; i < row; i++)
    {
        for(j = 0; j < col; j++)
        {
            printf("\n[%d] [%d] :", i,j);
            scanf("%d", arr[i][j]);
        }
    }
    
    
    return 0;
}

 

Ngôn ngữ c ạ, em chưa hiểu phần con trỏ mảng 2 chiều, code như trên thì nhập số vào nó chỉ chạy 2 dòng cho nhập mảng rồi k cho nhập tiếp 

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
K9 SuperAdmin, KquizAdmin, KquizAuthor đã bình luận 16:45 28-07-2021
#include <stdio.h>
#include <malloc.h>


int main()

{

    int row, col;

    printf("Nhap so dong : ");
    scanf_s("%d", &row);

    printf("Nhap so cot : ");
    scanf_s("%d", &col);

    int** arr = (int**)malloc(row * sizeof(int));
    int i, j;
    for (i = 0; i < row; i++)
    {
        arr[i] = (int*)malloc(col * sizeof(int));;
    }
    printf("\nNhap mang : ");
    for (i = 0; i < row; i++)
    {
        for (j = 0; j < col; j++)
        {
            printf("\n[%d] [%d] :", i, j);
            scanf_s("%d", &arr[i][j]);
        }
    }


    return 0;
}

lưu ý mình sửa tại chỗ này

scanf_s("%d", &arr[i][j]);

sài 

&arr[i][j]

 

Vo Tan Duc đã bình luận 19:07 27-07-2021

Hoặc là bạn thử tham khảo bài này:

https://nguyenvanhieu.vn/cap-phat-dong-mang-2-chieu/

trungbui đã bình luận 17:15 27-07-2021

ảnh minh họa

Câu hỏi mới nhất