Salve ragazzi, sto riscontrando dei problemi con lo svolgimento di un esercizio. L'esercizio mi chiede di effettuare un controllo su una stringa letta da file e visualizzare in output se quest'ultima è formata da soli lettere, numeri o entrambi.
Ho cominciato ad effettuare un controllo visualizzando solo la presenza di numeri, giusto per capirne il concetto e lo svolgimento. (troverete la parte di codice interessata tra commento).
Di seguito il codice:
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *fp;
char s[50];
int len=0;
int controllo=0;
int c;
fp= fopen("file.txt","r");
if (fp==NULL){
printf("Impossibile aprire il file! \n");
}
else
fgets(s,50,fp);
printf("%s",s);
printf("\n\n");
while((len<50) && (s[len]!='\0'))
len++;
if(len<50)
printf("La frase contiene %d caratteri\n",len);
else
printf("Impossibile calcolare la lunghezza della frase!\n");
printf("\n\n");
fgets(s,50,fp);
printf("%s",s);
printf("\n\n");
// controllo numeri all'interno della stringa
for (c=0; c<50; c++){
if((s[c]>='0') & (s[c]<='9')){
if (controllo!=NULL){
printf("La frase contiene dei numeri",controllo);
}
else
printf("La frase non contiene numeri");
}
}
Vi ringrazio in anticipo!!
}