Lỗi cannot convert to int 'for argument'

Mình bị lỗi Cannot convert'DOTHI' to int 'for argument' 1 to int Nhapmatran(int, DOTHI), mong các bác chỉnh sửa. Mình mới học nên chưa rõ lắm.

#define MAX 100
#define inputfile "C:/test8.txt"
#include<stdio.h>
#include<conio.h>

typedef struct GRAPH {
	int n;		
	int a[MAX][MAX]; 
}DOTHI;

int NhapMaTran(int a, DOTHI &g)
{
    for (int i=0; i<g.n; i++)
        for (int j=0; j<g.n; j++)
        {
            printf("\nNhap a[%d][%d]: ",i,j);
            scanf("%d", &g.a[i][j]);
        }
        return 1;
}
 
void XuatMaTran(DOTHI g)
{
    for(int i=0; i<g.n; i++)
    {
        for(int j=0; j<g.n; j++)
        {
            printf("%4d",g.a[i][j]);
        }
        printf("\n");
    }
}
 
int main()
{
	DOTHI g;
    int n;
    int a[100][100];
    printf("\nNhap vao so phan tu cua mang: ");
    scanf("%d",&n);
     
    NhapMaTran(g);
    XuatMaTran(g);
}

Viết thiếu đối số đầu vào cho hàm số NhapMaTran nhé.

3 Likes

chỉnh lại dùm mình được ko =v=

NhapMaTran(g);

Gọi với 1 đối số.

int NhapMaTran(int a, DOTHI &g)

Hàm số được định nghĩa có 2 đối số.

Còn nữa, bạn đặt tên biến toàn là a, b, c thế này thì bản ngã tương lai của bạn sẽ oán hận lắm đấy.
Thế thôi, mình lười đọc code nên sẽ không giúp bạn sửa hết.

3 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?