Ciao a tutti, ho scritto questo programma per trovare la parola con il maggior numero di vocali da un file di testo (parole separate da spazi e punteggiatura) passato come argomento su linea di comando.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define LUNG_MAX 30
int main(int argc, char* argv[])
{
FILE *fp;
int i, vocali_corrente=0, vocali_max=0;
char parola[LUNG_MAX], parola_corrente[LUNG_MAX];
if(argc!=2)
{
printf("errore numro parametri\n");
return 1;
}
if((fp=fopen(argv[1],"r"))==NULL)
{
printf("errore apertura file");
return 1;
}
vocali_max=-1;
while(fscanf(fp,"%s", parola_corrente)!=EOF)
{
for(i=0; parola_corrente[i]!="\0"; i++)
if(parola_corrente[i]=='a'||
parola_corrente[i]=='A'||
parola_corrente[i]=='e'||
parola_corrente[i]=='E'||
parola_corrente[i]=='i'||
parola_corrente[i]=='I'||
parola_corrente[i]=='o'||
parola_corrente[i]=='O'||
parola_corrente[i]=='u'||
parola_corrente[i]=='U')
vocali_corrente++;
}
if(vocali_max<vocali_corrente)
{
vocali_max=vocali_corrente;
strcpy(parola, parola_corrente);
vocali_corrente=0;
}
fclose(fp);
printf("la parola con piu vocali è: %s",parola);
return 0;
}
ora vorrei eseguirlo ma non so come passargli il path del file: ho creato un file.txt con blocco note.... e poi?