Từ 1 tới 4 trên tổng số 4 kết quả

Đề tài: Xuất Mảng Ra Ngoài Bị Lỗi, mong được sự giúp đỡ của các bạn...

  1. #1
    Ngày gia nhập
    09 2021
    Bài viết
    2

    Mặc định Xuất Mảng Ra Ngoài Bị Lỗi, mong được sự giúp đỡ của các bạn...

    C++ Code:
    1. #include <iostream>
    2.  
    3. using namespace std;
    4.  
    5. void Nhap(int M[0][0],int row,int col);
    6. void Xuat(int M[0][0],int row,int col);
    7.  
    8. int main ()
    9. {
    10.     int row,col,M[0][0];
    11.     cout<<"Nhap so hang: ";cin>>row;cout<<endl;
    12.     cout<<"Nhap so cot: ";cin>>col;cout<<endl;
    13.     Nhap(M,row,col);
    14.     cout<<"\nMang sau khi nhap la: \n";
    15.     Xuat(M,row,col);
    16. }
    17.  
    18. void Nhap(int M[0][0],int row,int col)
    19. {
    20.     for (int i=0;i<row;i++)
    21.     {
    22.         for (int j=0;j<col;j++)
    23.         {
    24.             cout<<"M["<<i<<"]["<<j<<"]=";
    25.             cin>>M[i][j];
    26.             cout<<endl;
    27.         }
    28.     }
    29. }
    30.  
    31. void Xuat(int M[0][0],int row,int col)
    32. {
    33.     for (int i=0;i<row;i++)
    34.     {
    35.         for (int j=0;j<col;j++)
    36.         {
    37.             cout<<M[i][j]<<"\t";
    38.         }  
    39.         cout<<endl;
    40.     }
    41. }

    Click vào hình ảnh để lấy hình ảnh lớn

Tên:		Capture.PNG
Lần xem:	3
Size:		22.7 KB
ID:		74141
    Đã được chỉnh sửa lần cuối bởi MHoang : 27-09-2021 lúc 08:09 AM. Lý do: Chỉnh khung mã C++

  2. #2
    Ngày gia nhập
    02 2014
    Nơi ở
    TP.HCM
    Bài viết
    998

    Bạn cần học lại các giáo trình về mảng, thiếu căn bản rất nặng, có sửa lại mã thì cũng không giải quyết được gì. Dạng bài tập trên cần thay đổi các khai báo mảng, nếu theo C thì nên dùng con trỏ 2 cấp (con trỏ trỏ tới con trỏ) và cấp phát động cho nó, nếu quen với các lớp C++ thì nên dùng lớp vector/list/array.

    .

  3. #3
    Ngày gia nhập
    01 2008
    Nơi ở
    Rất đông người
    Bài viết
    742

    Code của bạn, mình đã chữa. Theo phương pháp thứ nhất của MHoang.

    C++ Code:
    1. #include <iostream>
    2.  
    3. using namespace std;
    4.  
    5. void Nhap(int **M,int row,int col);
    6. void Xuat(int **M,int row,int col);
    7.  
    8. int main()
    9. {
    10.    int row,col,**M;
    11.    cout<<"Nhap so hang: ";cin>>row;
    12.    cout<<"Nhap so cot: ";cin>>col;
    13.    M = new int*[row];
    14.    for(int i=0;i<row;i++)
    15.    {
    16.       M[i] = new int[col];
    17.    }
    18.    Nhap(M,row,col);
    19.    cout<<"\nMang sau khi nhap la: \n";
    20.    Xuat(M,row,col);
    21.    for(int i=0;i<row;i++)
    22.    {
    23.       delete M[i];
    24.    }
    25.    delete[] M;
    26. }
    27.  
    28. void Nhap(int **M,int row,int col)
    29. {
    30.    for (int i=0;i<row;i++)
    31.    {
    32.       for (int j=0;j<col;j++)
    33.       {
    34.           cout<<"M["<<i<<"]["<<j<<"]=";
    35.           cin>>M[i][j];
    36.       }
    37.    }
    38. }
    39.  
    40. void Xuat(int **M,int row,int col)
    41. {
    42.    for (int i=0;i<row;i++)
    43.    {
    44.       for (int j=0;j<col;j++)
    45.       {
    46.           cout<<M[i][j]<<"\t";
    47.       }
    48.       cout<<endl;
    49.    }
    50. }

    Kết quả
    Code:
    Nhap so hang: 3
    Nhap so cot: 5
    M[0][0]=11
    M[0][1]=12
    M[0][2]=13
    M[0][3]=14
    M[0][4]=15
    M[1][0]=21
    M[1][1]=22
    M[1][2]=23
    M[1][3]=24
    M[1][4]=25
    M[2][0]=31
    M[2][1]=32
    M[2][2]=33
    M[2][3]=34
    M[2][4]=35
    
    Mang sau khi nhap la:
    11      12      13      14      15
    21      22      23      24      25
    31      32      33      34      35
    -...- -.- .. .-.. .-.. - .... . -... . .- ... - .-.-.

  4. #4
    Ngày gia nhập
    09 2021
    Bài viết
    2

    Cảm ơn các góp ý của bạn, mình mới học nên chưa hiểu sâu những j bạn nói nhưng mình sẽ tìm hiểu thêm.

    - - - Nội dung đã được cập nhật ngày 28-09-2021 lúc 04:33 PM - - -

    Cảm ơn các chỉ dẫn của bạn rất nhiều

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn