Salve a tutti. L'esame di informatica è alle porte e stò esercitandomi su alcune prove d'esame. Devo leggere da file alcune stringhe e prendere solo quelle la cui prima lettera è compresa in un certo intervallo x y, dove x e y sono inserite dall'utente. Ho scritto così, ma sono sicuro che è una boiata, la stanchezza comincia a farsi sentire già a prima mattina..![]()
L'idea era di leggere la prima stringa, verificare che il primo carattere fosse compreso nell'intervallo, e solo in caso positivo inserire la stringa nel vettore. Ma non mi esce fuori nulla di sensato..codice:#include <stdio.h> #define MAXP 10 #define MAXL 30 int main(){ char file[10]; char parole[MAXP][MAXL]; char x, y; int i=0, j=0; FILE *f; printf("Inserisci il nome del file: "); gets(file); printf("Inserire i due estremi dell'intervallo di caratteri in base al quale selezionare le parole contenute nel file: "); scanf("%c%c", &x, &y); f=fopen(file, "r"); for(i=0; i<MAXP; i++){ while(parole[i][j]!='\0'){ if(parole[i][j]>=x && parole[i][j]<=y){ fscanf(f, "%s", &parole[i]); } } } fclose(f); }


Rispondi quotando