// tu archivo se llama records.txt y tiene este 'aspecto': /* 0 0 0 0 0 0 0 0 0 */ // porque al principio no hay records // hasta aqui se supone que ya tienes cuantos intentos hizo la computadora o el humano o el gnomo o lo que sea // entonces sea n el numero de intentos y opc la opcion de 1 = humano-compu, 2 = compu-humano, 3 = compu-compu (eso lo das tu) // Primero leemos y guardamos los records de la opcion correspondiente en un arreglo de enteros de 3 elementos records[3] void records(int n, int z) { int x; FILE *fp; if ((fp = fopen("C:\\nacho\\records.txt","a+")) == NULL) printf("Error abriendo archivo de records"); else { // Obtenemos los 9 records para luego dividirlos for (x = 0; x < 9 ; x++ ) fscanf(fp,"%d",&records[x]); if (z == 1) { // Vemos donde debe ir este record: if (n > records[0]) records[0] = n; else if (n > records[1]) records[1] = n; else if (n > records[2]) records[2] = n; } else if (z == 2) { // Vemos donde debe ir este record: if (n > records[3]) records[3] = n; else if (n > records[4]) records[4] = n; else if (n > records[5]) records[5] = n; } else if (z == 3) { // Vemos donde debe ir este record: if (n > records[6]) records[6] = n; else if (n > records[7]) records[7] = n; else if (n > records[8]) records[8] = n; } // Ya que está actualizada la lista de records los escribimos otra vez rewind(fp); for (x = 0; x < 9 ; x++ ) fprintf(fp,"%d\n",&records[x]); } fclose(fp); }