Giúp sửa lỗi lý thuyểt đồ thị

#include <iostream>
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#define inputfile "C:\\dothi.txt"
#define MAX 10
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
typedef struct GRAPH{
	int n;
	int a[MAX][MAX];
}DOTHI;
int DocMaTranKe(const char dothi[100], DOTHI &g){
	FILE* f;
	f=fopen(dothi,"rt");
	if(f == NULL)
	{
		printf("Khong mo duoc file\n");
		return 0;
	}
	fscanf(f,"%d",&g.n);
	int i,j;
	for(i =0; i<g.n; i++){
		for(j =0; j<g.n; j++)
		{
			fscanf(f,"%d",&g.a[i][j]);
		}
	}
	fclose(f);
	//return 1;
}
void XuatMaTranKe(DOTHI g)
{
	printf("So dinh cua do thi la %d\n", g.n);
	printf("Ma tran ke cua do thi la\n");
	for(int i=0;i<g.n;i++)
	{
		printf("\t");
		for(int j=0;j<g.n;j++)
		{
			printf("%d",g.a[i][j]);
		}
		printf("\n");
	}
}	
int KTMaTranKeHopLe(DOTHI g)
{
	for(int i=0;i<g.n;i++)
	{
		if(g.a[i][i] !=0)
			return 0;
	}	
	return 1;
}/**
int KTDTVoHuong(DOTHI g)
{
	for(int i=0;i<g.n;i++)
	{
		for(int j=0;j<g.n;j++)
		{
			if(g.a[i][j] !=g.a[j][i]);
			{
				return 0;
			}
		}
	}	
	return 1;
}*/
int main()
{	
	DOTHI g;
	if(DocMaTranKe(inputfile,g)==1)
	{		
		printf("Da lay thong tin do thi tu file thanh cong");
		XuatMaTranKe(g);	
		printf("Bam 1 phim bat ky de kiem tra do thi");
		getch();
		if(KTMaTranKeHopLe(g)==1)
			printf("Do thi hop le\n");
		else
			printf("Do thi khong hop le\n");
		/*if(KTDTVoHuong(g)==1)
			printf("Do thi vo huong\n");
		else
			printf("Do thi co huong\n");*/
	}
	getch();
	return 0; 
}

lỗi gì? đề bài? ý tưởng, giải pháp? giải thích code?

1 Like

đề bài: nhập xuất ma trận kề

lỗi: không xuất ra ma trận

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