Tengo un problema, mi codigo no lee correctamente el fichero y no se arreglarlo.
Veamos tengo que leer el fichero de esta manera
Equipo1 - Equipo2 : resultado1 resultado2
FICHERO:
Luis y Pepe-Los Supermuseros: 5 0
Sevillanos-Pili y Mili: 2 3
Javier y Lopez-Valencia:4 1
Pili y Mili-Luis y Pepe: 2 3
Los Supermuseros-Javier y Lopez: 0 5
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
# define MAX 80
# define MAX_EQUIPOS 15
# define MAX_PARTIDAS 40
typedef struct {
char NombreEquipo [MAX];
int puntos;
int numpartidas;
int numpartidasganadas;
int numpartidasperdidas;
} Equipo;
typedef struct {
Equipo InformacionEquipo [MAX_EQUIPOS];
int numequipos;
}Lista_Equipos;
typedef struct {
char Equipo1 [MAX];
char Equipo2 [MAX];
int Resultado1;
int Resultado2;
}Partida ;
typedef struct {
Partida InformacionPartida [MAX_PARTIDAS];
int numpartidas;
}Lista_Partidas;
void LeerArchivoPartida (Lista_Equipos *ListaEquipos, Lista_Partidas *ListaPartidas)
{
int i=0;
int p=0;
int k=0,j=0;
char caracter;
FILE *archivoPartida;
archivoPartida = fopen ("Resultados.txt", "r");
if (archivoPartida == NULL) {
printf("NO EXISTE EL FICHERO!\n");
exit(1);
}
while (!feof(archivoPartida)) {
caracter = fgetc(archivoPartida);
while (caracter!='-') {
ListaPartidas->InformacionPartida.Equipo1[k]=caracter;
caracter=fgetc(archivoPartida);
k++;
if (caracter=='-')
ListaPartidas->InformacionPartida.Equipo1[k]='\0';
}
while (caracter!=':') {
ListaPartidas->InformacionPartida.Equipo2[j]=caracter;
caracter=fgetc(archivoPartida);
j++;
if (caracter==':')
ListaPartidas->InformacionPartida.Equipo2[j]='\0';
}
puts(ListaPartidas->InformacionPartida.Equipo1);
printf("\n");
puts(ListaPartidas->InformacionPartida.Equipo2);
printf("\n");
fscanf(archivoPartida, "%d %d", &ListaPartidas->InformacionPartida.Resultado1,&ListaPartidas->InformacionPartida.Resultado2);
printf("%d %d", ListaPartidas->InformacionPartida.Resultado1,ListaPartidas->InformacionPartida.Resultado2);
i++;
}