Cambiar vocales por letra que mas se repite

PROGRAMA PARA CAMBIAR LA LETRA QUE MAS SE REPITE DE LA CADENA POR LAS VOCALES

#include<conio.h>
#include<stdio.h>
#include<string.h>
#include<ctype.h>

int vocalea(char c)
{
int x;
x=0;
c=toupper(c);
if(c=='A' || c=='E'|| c=='I' || c=='O' || c=='U')
x=1;
return x;
}

void main()
{
int c[27];
char *cadena;
int i,len;
int may,pos;

clrscr();
printf("Cadena: ");
gets(cadena);

len=strlen(cadena);//calculamos la longitud de la cadena
for (i=0;i<27;i++)//iniciamos el contador
c[i]=0;

for(i=0;i<len;i++)//cuenta las cantidad  por cada letra
c[toupper(cadena[i])-65]++;
may=-1;

for(i=0;i<27;i++)//busca la letra que mas se repiute
if(c[i]>may)
{
may=c[i];
pos=i;
}
for(i=0;i<len;i++)//cambia la letra q mas se repite por las vocales
if(vocalea(cadena[i])==1)
cadena[i]=pos+65;
puts(cadena);
getch();
}
//includecpp.blogspot.com

No hay comentarios:

Publicar un comentario