En este post de programación en C, también conocido como ANSI C vamos a ver cómo intercalar las letras de una cadena para convertir una en mayúscula, la siguiente en minúscula, y así hasta terminar.
Básicamente vamos a convertir un carácter a minúscula, el segundo a mayúscula y así sucesivamente. Esto es convertir la cadena de manera intercalada.
Por ejemplo, convertir parzibyte
a PaRzIbYtE
.
Lecturas recomendadas
En este caso vamos a usar toupper y tolower así que te recomiendo ver antes el post de conversión.
C – Cadena a mayúscula y minúscula intercalada
Pasemos al código. En este caso vamos a convertir un carácter a mayúscula y el otro a minúscula, así que necesitamos saber la posición en la que vamos.
Esto lo podemos hacer comprobando si el índice es par o impar. Entonces el código completo queda así:
/*
https://parzibyte.me/blog
*/
#include <stdio.h>
#include <ctype.h>
int main()
{
char nombre[] = "parzibyte";
printf("Antes de intercalar: %s\n", nombre);
int i = 0;
for (i = 0; nombre[i] != '\0'; i++)
{
if (i % 2 == 0)
{
nombre[i] = toupper(nombre[i]);
}
else
{
nombre[i] = tolower(nombre[i]);
}
}
printf("Después de intercalar: %s\n", nombre);
}
Se recorre la cadena en la línea 13. Después dentro del ciclo se compara el índice actual para verificar si es par. En caso de que sea par se convierte a mayúscula, caso contrario, a minúscula.
Finalmente imprimimos los resultados.
Si quieres puedes leer más sobre C en este enlace.