30/09/2018, 16:25

Cách dùng con trỏ 2 chiều trong hàm?

// 1.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <iostream>
using namespace std;


void nhapmang(int **a, int d, int c);
void inmang(int **a, int d, int c);

int _tmain(int argc, _TCHAR* argv[])
{
	int **a;
	int d, c;

	cout << "nhap so dong:";
	cin >> d;
	cout << "nhap so cot:";
	cin >> c;
	nhapmang(a, d, c);
	inmang(a, d, c);
	return 0;
}
void nhapmang(int **a, int d, int c)
{
	for (int i = 0; i < d; i++)
	{
		for (int j = 0; j < c; i++)
		{
			cout << "phan tu thu a[" << i << "][" << j << "]" << endl;
			cin >> a[i][j];
		}
	}
}
void inmang(int **a, int d, int c)
{
	cout << "mang sau khi nhap la:";
	for (int i = 0; i < d; i++)
	{
		for (int j = 0; j < c; j++)
		{
			cout << a[i][j];
		}
	}
	cout << endl;
}
Gió viết 18:33 ngày 30/09/2018

Do a là mảng động, bạn phải cấp bộ nhớ cho nó.
Trước dòng nhập mảng bạn thêm dòng sau:

a= new int*[d];
for(int i=0; i<d;++i) a[i]= new int[c];
Long Long viết 18:40 ngày 30/09/2018

ak.hiu rồi. cảm ơn Gio nka. BreakDown ko phải bậy đâu mà ko hiu sao mỗi lần copy qua trang là nó ko xuất hiện mấy dòng include. chứ có khai báo mà

Long Long viết 18:28 ngày 30/09/2018
// 1.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <iostream>
using namespace std;


void nhapmang(int **a, int d, int c);
void inmang(int **a, int d, int c);

int _tmain(int argc, _TCHAR* argv[])
{
	int **a=0;
	int d, c;


	cout << "nhap so dong:";
	cin >> d;
	cout << "nhap so cot:";
	cin >> c;

	a = new int *[d];

	for (int i = 0; i < d; i++)
		a[i] = new int[c];

	for (int i = 0; i < d; i++)
		delete[] a[i];
	delete[] a;

	nhapmang(a, d, c);
	inmang(a, d, c);
	return 0;
}
void nhapmang(int **a, int d, int c)
{
	for (int i = 0; i < d; i++)
	{
		for (int j = 0; j < c; i++)
		{
			cout << "phan tu thu a[" << i << "][" << j << "]" << endl;
			cin >> a[i][j];
		}
	}
}
void inmang(int **a, int d, int c)
{
	cout << "mang sau khi nhap la:";
	for (int i = 0; i < d; i++)
	{
		for (int j = 0; j < c; j++)
		{
			cout << a[i][j];
		}
	}
	cout << endl;
}
Long Long viết 18:41 ngày 30/09/2018

vẫn ko include dc. mới biết trang này nên chưa nghiên cứu hết. mà bạn ơi sao mình cấp phát rồi nó vẫn bị sai

Gió viết 18:29 ngày 30/09/2018

Chưa chịu làm việc thì đã cho nghỉ rồi :D: bạn để delete ở cuối chương trình.

Long Long viết 18:37 ngày 30/09/2018

quê thiệt. đúng là cầm đèn chạy trc ô tô. thú thật con trỏ vs cấp phát động mình hơi mơ mơ

Long Long viết 18:33 ngày 30/09/2018
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
cout << "hello" << setw(3);
return 0;
}
Nguyễn Minh Dũng viết 18:32 ngày 30/09/2018

Nhờ @Gio sửa lại cái tiêu đề câu hỏi tí, anh chả hiểu @Long_Long đang hỏi gì cả

Nguyễn Minh Dũng viết 18:32 ngày 30/09/2018

Anh đã sửa tiêu đề thành

Cách truyền mảng vào trong hàm?

@BreakDown nghĩ nên thêm nội dung câu hỏi như thế nào? Vì post code không mà không có câu hỏi là không rõ ràng.

Nguyễn Minh Dũng viết 18:34 ngày 30/09/2018

Thế còn nội dung câu hỏi mình nên thêm như thế nào? Vì câu hỏi này chỉ có code mà không có câu hỏi cụ thể.

Vũ Công Luật viết 18:30 ngày 30/09/2018

có iostream rồi mà bạn

Tao Không Ngu. viết 18:38 ngày 30/09/2018

This post was flagged by the community and is temporarily hidden.

Bài liên quan
0