Tutoriales de informática - Abrirllave.com

Abrirllave.com

Ejercicio de lenguaje C - De vocal minúscula a mayúscula

Escribir en lenguaje C un programa que:

1º) Pida por teclado una vocal en minúscula (dato carácter).

2º) Muestre por pantalla la misma vocal pero en mayúscula.

Nota: Si el dato introducido no es una vocal en minúscula, se mostrará el mensaje: "ERROR: '<vocal>' no es una vocal minúscula.".

En pantalla se verá, por ejemplo:

Visualización en pantalla del programa De vocal minúscula a mayúscula, resuelto en lenguaje C.

Si no se introduce una vocal minúscula, se verá:

Visualización en pantalla del programa De vocal minúsucla a mayúscula, mostrándose error, resuelto en lenguaje C.

Solución 1: utilizando la instrucción switch

/* Programa: De vocal minúscula a mayúscula (Solución 1) */

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

int main()
{
    char vocal;

    printf( "\n   Introduzca una vocal min%cscula: ", 163 );
    scanf( "%c", &vocal );

    switch ( vocal )
    {
        case 'a' : printf( "\n   A" );
                   break;
        case 'e' : printf( "\n   E" );
                   break;
        case 'i' : printf( "\n   I" );
                   break;
        case 'o' : printf( "\n   O" );
                   break;
        case 'u' : printf( "\n   U" );
                   break;
         default : printf( "\n   ERROR: '%c' no es una vocal min%cscula.", vocal, 163 );
   }

    getch(); /* Pausa */

    return 0;
}

Solución 2: utilizando las instrucciones switch e if

/* Programa: De vocal minúscula a mayúscula (Solución 2) */

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

int main()
{
    char  mayuscula, vocal;

    printf( "\n   Introduzca una vocal min%cscula: ", 163 );
    scanf( "%c", &vocal );

    switch ( vocal )
    {
        case 'a' : mayuscula = 'A';
                   break;
        case 'e' : mayuscula = 'E';
                   break;
        case 'i' : mayuscula = 'I';
                   break;
        case 'o' : mayuscula = 'O';
                   break;
        case 'u' : mayuscula = 'U';
    }

    if ( vocal == 'a' || vocal == 'e' || vocal == 'i' || vocal == 'o' || vocal == 'u' )
        printf( "\n   %c", mayuscula );
    else
        printf( "\n   ERROR: '%c' no es una vocal min%cscula.", vocal, 163 );

    getch(); /* Pausa */

    return 0;
}

Solución 3: anidando switch en if

/* Programa: De vocal minúscula a mayúscula (Solución 3) */

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

int main()
{
    char mayuscula, vocal;

    printf( "\n   Introduzca una vocal min%cscula: ", 163 );
    scanf( "%c", &vocal );

    if ( vocal == 'a' || vocal == 'e' || vocal == 'i' || vocal == 'o' || vocal == 'u' )
    {

        switch ( vocal )
        {
            case 'a' : mayuscula = 'A';
                       break;
            case 'e' : mayuscula = 'E';
                       break;
            case 'i' : mayuscula = 'I';
                       break;
            case 'o' : mayuscula = 'O';
                       break;
            case 'u' : mayuscula = 'U';
        }
        printf( "\n   %c", mayuscula );

    }
    else
        printf( "\n   ERROR: '%c' no es una vocal min%cscula.", vocal, 163 );

    getch(); /* Pausa */

    return 0;
}