Programma per visualizzare parole senza vocali

di il
1 risposte

Programma per visualizzare parole senza vocali

Salve a tutti, la professoressa mi ha dato un esercizio, cioè scrivere un programma che faccia inserire una parola e che la stampi nuovamente, ma senza vocali. Ho creato il programma, ma c'è un problema: ogni volta che scrivo una parola, mi ristampa solo la prima lettera, come se considerasse tutte le altre vocali, anche se in mezzo ci sono consonanti. Sicuramente ci sarà un errore logico, ma non riesco a capire in cosa consiste.



Vi posto il listato:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{
char a[100];
int n,i;


do{
printf("\nScrivi una parola: ");
gets(a);
n=strlen(a);
}
while((n<0)||(n>100));

for(i=0;i<n;i++){
if((a=='a')||(a=='e')||(a=='i')||(a=='o')||(a=='u')||(a=='A')||(a=='E')||(a=='I')||(a=='O')||(a=='U')){
a[i]='\0';}}


printf("\nLa nuova parola e\': %s ",a);

return 0;
}



Grazie in anticipo!!

1 Risposte

  • Re: Programma per visualizzare parole senza vocali

    Non devi sostituire le vocali con \0 perché quel carattere indica la fine della stringa e la printf non ti farà vedere il resto.
    Nel ciclo devi visualizzare il singolo carattere a solo se non è una vocale e il printf esterno non serve.
Devi accedere o registrarti per scrivere nel forum
1 risposte