Salve a tutti, dovrei togliermi questo dubbio definitivamente per andare tranquilla all'esame che ho tra due giorni;
Io ho un file ad esempio così:
Roma 10
Pechino 2
Milano 7
ecc

con i nomi delle città (non è scritto da nessuna parte che non possano essere nomi formati da due parole) e io devo scrivere una lista mettendoli in ordine di numero... che funzione devo usare? ma soprattutto come la devo usare? io ho provato con un fscanf in questo modo

codice:
 
Nodo CostruisciLista (char NomeFile[100], Nodo lista) {
    fp=fopen(file, "r");
    char CittaCorr[M];
    int CittaNum, n=1, indi;

    if (fp==NULL) {
        printf("impossibile aprire il file\n");
        return lista;
    }
    while (indi!=10 && n<=10) {
        indi=fscanf(fp, "%s%d", CittaCorr, &CittaNum);
        if (CittaNum=n) {
            Nodo nuovo;
            nuovo=malloc(sizeof(Lista));
            strcpy(nuovo->citta.city, CittaCorr);
            nuovo->citta.posizione=CittaNum;
            nuovo->next=lista;
            lista=nuovo;
            n=n+1;}


    }
    fclose(fp);
    return lista;
}
senza successo.. come si legge in modo sequenziale da file? Anche dando importanza al tipo di dato che può interessarci? Grazie in anticipo