Programa en C basado en un menú con la instrucción switch case

CBeginner
Practicar Ahora

Introducción

En este laboratorio, crearemos un programa basado en menú que utilice switch case en C. Un programa basado en menú es un programa que presenta un menú al usuario, y el usuario elige una opción del menú para realizar una tarea específica. En este programa, crearemos un menú que permitirá al usuario realizar varias tareas, como calcular el factorial de un número, comprobar si un número es primo o compuesto, y comprobar si un número es par o impar.

Crear un nuevo archivo C

El primer paso es crear un nuevo archivo C en el directorio ~/proyecto/. Nombra este archivo main.c.

Incluir las bibliotecas necesarias

En este paso, incluiremos la biblioteca de entrada y salida estándar en nuestro programa. Esta biblioteca proporciona funciones para las operaciones de entrada y salida en C.

#include <stdio.h>

Definir la función main()

main() es la función de punto de entrada en un programa C. En este paso, definiremos la función main().

int main()
{
    // Código aquí
    return 0;
}

Mostrando el Menú

En este paso, mostraremos el menú al usuario. El menú permitirá al usuario elegir entre diferentes opciones. Para este programa, usaremos las siguientes opciones:

  • Opción 1: Calcular el Factorial de un Número
  • Opción 2: Comprobar si un Número es Primo
  • Opción 3: Comprobar si un Número es Par o Impar
  • Opción 4: Salir del Programa
int main()
{
    printf("\n\n\t\tLabEx - Best place to learn\n\n\n");
    int choice, num, i;
    unsigned long int fact;

    while(1)
    {
        printf("1. Factorial \n");
        printf("2. Prime\n");
        printf("3. Odd\\Even\n");
        printf("4. Exit\n\n\n");
        printf("Enter your choice :  ");
        scanf("%d",&choice);
    }
    return 0;
}

Implementando el Switch Case

En este paso, implementaremos la instrucción switch case. En función de la elección del usuario, ejecutaremos diferentes casos.

int main()
{
    printf("\n\n\t\tLabEx - Best place to learn\n\n\n");
    int choice, num, i;
    unsigned long int fact;

    while(1)
    {
        printf("1. Factorial \n");
        printf("2. Prime\n");
        printf("3. Odd\\Even\n");
        printf("4. Exit\n\n\n");
        printf("Enter your choice :  ");
        scanf("%d",&choice);

        switch(choice)
        {
            case 1:
                /*
                * Código para calcular el factorial de un número
                */
                break;

            case 2:
                /*
                * Código para comprobar si un número es primo o compuesto
                */
                break;

            case 3:
                /*
                * Código para comprobar si un número es par o impar
                */
                break;

            case 4:
                /*
                * Código para salir del programa
                */
                break;
        }
    }
    return 0;
}

Calcular el factorial de un número

En este paso, calcularemos el factorial de un número solicitado por el usuario cuando el usuario seleccione la opción 1.

int main()
{
    printf("\n\n\t\tLabEx - Best place to learn\n\n\n");
    int choice, num, i;
    unsigned long int fact;

    while(1)
    {
        printf("1. Factorial \n");
        printf("2. Prime\n");
        printf("3. Odd\\Even\n");
        printf("4. Exit\n\n\n");
        printf("Enter your choice :  ");
        scanf("%d",&choice);

        switch(choice)
        {
            case 1:
                printf("Enter number:\n");
                scanf("%d", &num);
                fact = 1;
                for(i = 1; i <= num; i++)
                {
                    fact = fact*i;
                }
                printf("\n\nFactorial value of %d is = %lu\n\n\n",num,fact);
                break;

            case 2:
                /*
                * Código para comprobar si un número es primo o compuesto
                */
                break;

            case 3:
                /*
                * Código para comprobar si un número es par o impar
                */
                break;

            case 4:
                printf("\n\n\t\t\tCoding is Fun!\n\n\n");
                exit(0);
        }
    }
    return 0;
}

Verificar si un número es primo

En este paso, comprobaremos si un número es primo o compuesto. El programa mostrará un mensaje indicando si el número ingresado por el usuario es primo o no.

int main()
{
    printf("\n\n\t\tLabEx - Best place to learn\n\n\n");
    int choice, num, i;
    unsigned long int fact;

    while(1)
    {
        printf("1. Factorial \n");
        printf("2. Prime\n");
        printf("3. Odd\\Even\n");
        printf("4. Exit\n\n\n");
        printf("Enter your choice :  ");
        scanf("%d",&choice);

        switch(choice)
        {
            case 1:
                /*
                * Código para calcular el factorial de un número
                */
                break;

            case 2:
                printf("Enter number:\n");
                scanf("%d", &num);
                if(num == 1)
                    printf("\n1 no es ni primo ni compuesto\n\n");
                for(i = 2; i < num; i++)
                {
                    if(num%i == 0)
                    {
                        printf("\n%d no es un número primo\n\n", num);
                        break;
                    }

                }
                /*
                    No es divisible por ningún número
                    diferente de 1 y sí mismo
                */
                if(i == num)
                {
                    printf("\n\n%d es un número primo\n\n", num);
                    break;
                }
                break;

            case 3:
                /*
                * Código para comprobar si un número es par o impar
                */
                break;

            case 4:
                printf("\n\n\t\t\tCoding is Fun!\n\n\n");
                exit(0);
        }
    }
    return 0;
}

Verificar si un número es par o impar

En este paso, comprobaremos si un número es par o impar. El programa mostrará un mensaje indicando si el número ingresado por el usuario es par o impar.

int main()
{
    printf("\n\n\t\tLabEx - Best place to learn\n\n\n");
    int choice, num, i;
    unsigned long int fact;

    while(1)
    {
        printf("1. Factorial \n");
        printf("2. Prime\n");
        printf("3. Odd\\Even\n");
        printf("4. Exit\n\n\n");
        printf("Enter your choice :  ");
        scanf("%d",&choice);

        switch(choice)
        {
            case 1:
                /*
                * Código para calcular el factorial de un número
                */
                break;

            case 2:
                /*
                * Código para comprobar si un número es primo o compuesto
                */
                break;

            case 3:
                printf("Enter number:\n");
                scanf("%d", &num);

                if(num%2 == 0) // 0 se considera un número par
                    printf("\n\n%d es un número par\n\n",num);
                else
                    printf("\n\n%d es un número impar\n\n",num);
                break;

            case 4:
                printf("\n\n\t\t\tCoding is Fun!\n\n\n");
                exit(0);
        }
    }
    return 0;
}

Salir del programa

En este paso, agregaremos un caso para salir del programa cuando el usuario seleccione la opción 4.

int main()
{
    printf("\n\n\t\tLabEx - Best place to learn\n\n\n");
    int choice, num, i;
    unsigned long int fact;

    while(1)
    {
        printf("1. Factorial \n");
        printf("2. Prime\n");
        printf("3. Odd\\Even\n");
        printf("4. Exit\n\n\n");
        printf("Enter your choice :  ");
        scanf("%d",&choice);

        switch(choice)
        {
            case 1:
                /*
                * Código para calcular el factorial de un número
                */
                break;

            case 2:
                /*
                * Código para comprobar si un número es primo o compuesto
                */
                break;

            case 3:
                /*
                * Código para comprobar si un número es par o impar
                */
                break;

            case 4:
                printf("\n\n\t\t\tCoding is Fun!\n\n\n");
                exit(0);
        }
    }
    return 0;
}

Resumen

En este laboratorio, hemos creado un programa en C basado en un menú utilizando la instrucción switch case. Este programa muestra un menú al usuario, y el usuario puede elegir entre diferentes opciones para realizar varias tareas, como calcular el factorial de un número, comprobar si un número es primo o compuesto y comprobar si un número es par o impar. Esperamos que este laboratorio haya proporcionado una buena comprensión sobre cómo crear un programa basado en un menú utilizando la instrucción switch case en C.