Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/11/2009, 10:58
Avatar de thebestboy2671
thebestboy2671
 
Fecha de Ingreso: enero-2008
Mensajes: 138
Antigüedad: 17 años, 1 mes
Puntos: 1
Pregunta Cargar un grafo e imprimir matriz de adyacencia

Hola a todos, la cuestión es que cuando intento imprimir la matriz de adyacencia, el programa no la imprime de forma correcta, les adjunto el codigo:
Código:
#include <stdio.h>

#include <conio.h>

#include <stdlib.h>

#include <time.h>

#include <string.h>

int main(){

	clrscr();

	int i, a, cant, **p;

	char *c, resp='s';

	printf("Cantidad de nodos del grafo: ");

	scanf("%d", &cant);

	p=(int **)calloc(cant, sizeof(int*));

	c=(char *)calloc(cant, sizeof(char));

	if(c != NULL){

		/*Aqui se introducen todos los nodos pegados, o sea

		sin usar espacios entre ellos

		*/

		printf("\nIntroduzca todos los nodos en mayuscula: ");

		scanf("%s", c);

		if(strlen(c) > cant){

			printf("\nCantidad de nodos fuera de limite");

		}

		else{

			for (i=0; i<cant; i++){

				for (a=0; a<cant; a++){

					printf("\nHay camino de %c a %c s/n: ", c[i], c[a]);

					fflush(stdin);

					scanf("%c", &resp);

					printf("%c", resp);

					if (resp == 's' || resp == 'S'){

						p[i][a] = 1;

						printf("%d", p[i][a]);

					}

					else{

						p[i][a] = 0;

						printf("%d", p[i][a]);

					}

				}

				printf("%s", "\n");

			}

			for (i=0; i<cant; i++){

				for (a=0; a<cant; a++){

					printf("%d", p[i][a]);

				}

				printf("%s", "\n");

			}

		}

	}

	else{

		printf("\nNo hay espacio en memoria");

	}

	free(c);

	free(p);

	getch();

	return 0;

}
Incluso imprimo la respuesta del usuario cuando pregunta si de tal nodo a tal nodo hay camino y no solo eso, sino que cargo el arreglo bidimensional y lo imprimo ahi mismo junto con la respuesta del usuario, pero aun asi cuando intento imprimir nuevamente el arreglo en el for que está abajo, imprime de forma totalmente diferente. No sé qué pasa a ver si me dan una mano. Desde ya gracias por su tiempo. Saludos.
__________________
Si te he ayudado con mis conocimientos, añádeme algo de Karma :P