#include <Windows.h>
#include <iostream>
#include <conio.h>
typedef struct rutas
{
int codruta;
char cadorigen[20];
char caddestino[20];
float distancia;
} trut;
void datos_ruta()
{
int cod=0;
trut rutas;
FILE *pfich;
printf ("Introduzca el codigo de la ruta:");
scanf ("%i",&cod);
pfich=fopen("c:\rutas.dat","r+");
if (pfich == NULL)
{
printf ("Se ha producido un error. Imposible abrir el fichero.");
exit(1);
}
else
{
fread(&rutas,sizeof(trut),1,pfich);
while (cod == rutas.codruta)
{
printf ("El código introducido ya existe.");
printf ("Por favor, introduzca un código diferente:");
scanf ("%d",&cod);
fseek(pfich,0,0);
}
printf ("INTRODUZCA:nn");
printf ("*Origen del viaje:");
scanf ("%s",&rutas.cadorigen);
printf ("*Destino del viaje:");
scanf ("%s",&rutas.caddestino);
printf ("*Distancia a recorrer:");
scanf ("%f",&rutas.distancia);
system ("cls");
printf ("*La ruta ha sido creada correctamente*");
_getch();
rutas.codruta = cod;
fwrite (&rutas, sizeof(trut),1,pfich);
}
fclose(pfich);
}
int main (int argc, char ** argv)
{
datos_ruta();
return 0;
}