Foros del Web » Programación para mayores de 30 ;) » C/C++ »

ayuda:como convertir a mayusculas en una cadena de caracteres

Estas en el tema de ayuda:como convertir a mayusculas en una cadena de caracteres en el foro de C/C++ en Foros del Web. ¡Hola!,queria saber si me pueden ayudar a como convertir en mayusucula el siguiente nombre el cual se encuentra en una cadena de caracteres,tiene que ser ...
  #1 (permalink)  
Antiguo 22/09/2010, 14:29
 
Fecha de Ingreso: septiembre-2010
Mensajes: 5
Antigüedad: 14 años, 3 meses
Puntos: 0
ayuda:como convertir a mayusculas en una cadena de caracteres

¡Hola!,queria saber si me pueden ayudar a como convertir en mayusucula el siguiente nombre el cual se encuentra en una cadena de caracteres,tiene que ser basico ya que hace poco tiempo comenze.Ya lo tengo pasado todo a minuscula,pero ahora me pide pasar las primeras letras en mayuscula,ejemplo: "luis perez" a este formato "Luis Perez".
Hasta el momento convertido todo a minuscula me quedo algo asi:
for(i=0; i<6 ; i++)
printf ("ingrese nombre y apellido");
fflush (stdin);
gets (nomap);
strlwr (nomap [i]);

Desde ya gracias
  #2 (permalink)  
Antiguo 22/09/2010, 19:23
Avatar de donyoyo  
Fecha de Ingreso: mayo-2010
Ubicación: Chile
Mensajes: 31
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: ayuda:como convertir a mayusculas en una cadena de caracteres

estimado:
la implentación de cualquier C trae consigo una libreria "ctype.h" que contiene las funciones:
- int to_upper(int c)
- int to_lower(int c)

Aca unas rutinas utilizando dichas funciones:
Código C:
Ver original
  1. #include <string.h>
  2. #include <strings.h>
  3. #include <ctype.h>
  4.  
  5. int to_minusculas(char *texto)
  6. {
  7.     int idx;
  8.     for(idx=0;idx<strlen(texto);idx++)
  9.         texto[idx]=tolower(texto[idx]);
  10. }
  11.  
  12. int to_mayusculas(char *texto)
  13. {
  14.     int idx;
  15.     for(idx=0;idx<strlen(texto);idx++)
  16.        texto[idx]=toupper(texto[idx]);
  17. }
  18.  
  19. int to_capitalize(char *texto)
  20. {
  21.     int idx;
  22.     int sw=0;
  23.  
  24.     to_minusculas(texto);
  25.  
  26.     for(idx=0;idx<strlen(texto);idx++)
  27.     {
  28.        if ((sw==0) && (texto[idx]!=32))
  29.        {
  30.           texto[idx]=toupper(texto[idx]);
  31.           sw=1;
  32.        }
  33.        if (texto[idx]==32) sw=0;
  34.     }
  35. }
  36.  
  37. int main()
  38. {
  39.     char frase[]="RODrigo burGOS";
  40.     printf("Frase Natural      :[%s]\n",frase);
  41.     to_minusculas(frase);
  42.     printf("Frase Minusculas   :[%s]\n",frase);
  43.     to_mayusculas(frase);
  44.     printf("Frase Mayusculas   :[%s]\n",frase);
  45.     to_capitalize(frase);
  46.     printf("Frase Capitalize   :[%s]\n",frase);
  47.     return(0);
  48. }

La ejecucion de este proceso arrojara lo siguiente:



Frase Natural :[RODrigo burGOS]
Frase Minusculas :[rodrigo burgos]
Frase Mayusculas :[RODRIGO BURGOS]
Frase Capitalize :[Rodrigo Burgos]



Saludos

Etiquetas: c++, mayuscula, mayusculas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:22.