Sentencia switch, lenguaje de programación C

La sentencia switch da una alternativa mucho más refinada a la necesidad de utilizar o implementar múltiples sentencias condicionales if cuando deseamos que una determinada variable tome diferentes valores para cada condición.

Generalmente, la sentencia switch se implementa cuando es necesarario la utilización de un menú de opciones ya que el usuario deberá escoger una de las opciones, a esto me refiero cuando comento que la variable puede tomar diferentes valores.

Sentencia switch

La sintaxis o estructura general de la sentencia switch es la siguiente:

switch (expresión)
{
case cte_1: sentencia_11;
sentencia_12;
...
case cte_2: sentencia_21;
sentencia_22;
...
...
...
...
case cte_n: sentencia_n;
sentencia_n;
...
}

Vale la pena resaltar que «expresión» es el nombre de la variable que se utilizará como argumento de la sentencia switch.

Ahora bien, en la sintaxis de la sentencia switch que anteriormente presenté se comprueba el valor que ingrese el usuario que es el que tomará la variable expresión y lo compara con algunas de las etiquetas que acompañen a cada case. En caso de no encontrar ninguna coincidencia, el valor lo tomará como default.

Por otra parte, como antes lo mencioné, si la sentencia switch no contiene el valor ingresado por el usuario (que lo tomará la variable expresión o el argumento), se puede crear un default (que es una palabra clave reservada del lenguaje C), y mostrar un mensaje que diga, por ejemplo: «opción errónea, intente de nuevo.», así de esa manera, cuidamos nuestro programa.

En tal sentido, se podría hacer un caso práctico. Creemos un programa donde se muestre al usuario un menú de opciones conformado por:

1. Capital de Argentina
2. Capital de España
3. 10000+58000 = ?
4. Capital de Alemania

A su vez, si el usuario ingresa una opción errónea que no se presenta en el menú de opciones, que se muestre un mensaje al mismo. Utilice la sentencia switch.

Programa de prueba con switch

Se puede observar en el programa anterior nuevas cosas que quiero aclarar que se refiere a la sintaxis de la sentencia switch que propuse al principio del artículo.

Si bien, dentro de la sentencia switch es necesario la implementación de » { } » (abrir/cerrar el ciclo); también, para cada case (en español: caso), es necesario que al final se rompa el case con una palabra clave reservada llamada break.

Es muy elegante utilizar esta sentencia switch. 😉

8 Comments