Que me falta para eliminar las vocales, me invierte la palabra, pero no me imprime la palabra sin vocales.
Aqui el codigo.
#include <iostream>
#include <cstring>
using namespace std;
void inverti(char v[], char ris[])
{
int len=strlen(v);
for(int i=0; i<len; i++)
{
ris[i]=v[len-i-1];
}
ris[len]='\0';
cout<<v<<endl;
cout<<ris<<endl;
}
void toglivocali(char v[], char ris[])
{
int len=strlen(v);
int j=0;
for(int i=0; i<len;i++)
{
if(v[i]=='a' || v[i]=='e' || v[i]=='i' || v[i]=='0' || v[i]=='u')
{
ris[j]=v[i];
j++;
}
}
ris[j]='\0';
cout<<ris<<endl;
}
int main() {
char s1[256];
char s2[256];
char s3[256];
cout<<"dammi stringa"<<endl;
cin>>s1;
inverti(s1,s2);
toglivocali(s2,s3);
cout<<"il risultato finale è:"<<s3<<endl;
cout<<s2;
return 0;
}
Gracias
Es un error de lógica:
void QuitarVocales(char v[], char ris[]) {
int len=strlen(v);
int j=0;
for(int i=0; i<len;i++) {
if(v[i]!='a' && v[i]!='e' && v[i]!='i' && v[i]!='o' && v[i]!='u' &&
v[i]!='A' && v[i]!='E' && v[i]!='I' && v[i]!='O' && v[i]!='U') {
ris[j]=v[i];
j++;
}
}
ris[j]='\0';
}
Si el caracter es distinto de cualquier vocal, entonces si que se guarda en el resultado