Khai báo Nhập xuất mảng 2 chiều trong C++

        • Mảng 2 chiều có cấu trúc: array[số dòng][số cột] , ví dụ sau đây là mảng a gồm có 3 dòng, 3 cột:
        • Để khai báo và gán các giá trị cho mảng số nguyên a[3][3] ta thực hiện:
       
      int a[3][3] = {
        { 5, 7, 9 },
        { 20, 32, 24 },
        { 56, 32, 23 }
      };
      

      – Kết quả được thể hiện qua bảng sau:


      – Để thay đổi phần tử a[0][0] có giá trị 5 thành 10:

       
      int a[3][3] = {
        { 5, 7, 9 },
        { 20, 32, 24 },
        { 56, 32, 23 }
      };
      a[0][0] = 10; // giá trị 5 thay bằng 10
      

      – Để xuất mảng 2 chiều, chúng ta cần một vòng lặp cho mỗi chiều của mảng.

       
      #include <iostream>
      using namespace std;
       
      int main() 
      {
      int a[3][3] = {
        { 5, 7, 9 },
        { 20, 32, 24 },
        { 56, 32, 23 }
      };
      	for(int i=0;i<3;i++){
      		for(int j=0;j<3;j++){
      			cout<<a[i][j]<<" ";
      		}
      		cout<<"\n";
      	}
      	return 0;
      }
      

      – Kết quả:

    • Nhập xuất mảng từ bàn phím:
 
#include <iostream>
using namespace std;

// Mảng có tối đa 100 dòng và 100 cột
#define ROW 100
#define COL 100

// hàm nhập mảng
void nhapMang(int a[][COL], int &m, int &n)
{
	cout << "Nhap so dong : ";
	cin >> m;
	cout << "Nhap so cot : ";
	cin >> n;

	// khởi tạo mảng [0][0] đến [m-1][n-1].
	for (int i = 0; i < m; i++)
	{
		for (int j = 0; j < n; j++)
		{
			cout << "a[" << i << "][" << j << "] = ";
			cin >> a[i][j];
		}
	}
}

// hàm xuất mảng
void xuatMang(int a[][COL], int m, int n)
{
	// xuất từng phần tử trong mảng
	for (int i = 0; i < m; i++)
	{
		for (int j = 0; j < n; j++)
		{
			cout << a[i][j] << "\t";
		}
		cout << endl;
	}
}
int main()
{
	int a[ROW][COL]; // mảng a có MAX phần tử
	int m, n; // số phần tử dòng và cột được sử dụng

	// nhập xuất mảng tự động
	nhapMang(a, m, n);
	xuatMang(a, m, n);

	return 0;
}

– Kết quả:

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *