Declaración de cambio en C ++ - ¿Cómo funciona? Sintaxis y ejemplos

Tabla de contenido:

Anonim

¿Qué es una declaración de cambio en C ++?

Las declaraciones de cambio de caso son declaraciones controladas que se consideran como un sustituto de las declaraciones if-else. Es una declaración de rama múltiple que proporciona una forma de organizar el flujo de ejecución a partes del código en función del valor de la expresión. En un término muy básico, una instrucción switch evalúa una expresión, la prueba y la compara con los varios casos escritos en el código. Tan pronto como se encuentre una coincidencia con cualquier caso, el control ingresará ese caso y comenzará a ejecutar las declaraciones escritas en ese caso hasta que se encuentre una declaración de interrupción. Tan pronto como aparece una declaración de interrupción, la declaración del interruptor finaliza y el control del programa sale del interruptor.

A veces puede suceder que ningún caso coincida con el valor de la expresión. Para tales casos, mencionamos un caso predeterminado que siempre se ejecutará en caso de que no se encuentre ninguna coincidencia. Los casos en un bloque de una instrucción switch están representados por diferentes números o cadenas, lo que se conoce como un identificador. El valor de la expresión o el valor proporcionado por el usuario se compara con estos casos hasta que se encuentra la coincidencia.

Sintaxis de la declaración de cambio de C ++

La sintaxis para la instrucción switch en lenguaje de programación C ++ se da a continuación:

switch( expression )
(
case value1:
//Block of code;
break;
case value2:
//Block of code;
break;
case valueN:
//Block of code
break;
default:
//Block of code
break;

Debe tener en cuenta lo siguiente al usar una declaración de cambio:

  1. Las etiquetas de los casos pueden ser un número entero o un carácter y deben ser únicos
  2. Las etiquetas de las cajas siempre terminan en punto y coma.
  3. Aunque una etiqueta de caso predeterminada no es obligatoria, puede ser una como máximo si está definida.
  4. Necesita una declaración de interrupción para quitar el control del bucle; de ​​lo contrario, todos los casos antes de que se ejecute una interrupción.
  5. La etiqueta de caso predeterminada no tiene ninguna posición específica.
  6. La declaración de cambio también se puede anidar.

Diagrama de flujo de la declaración de cambio

¿Cómo funciona Switch Statement en C ++?

Comprendamos el flujo de control representado en el diagrama de flujo anterior para obtener una mejor comprensión del flujo de ejecución.

Se pasa una expresión con la instrucción switch que es igual a uno de los valores de los casos. En caso de que el valor no sea igual, se ejecuta el caso predeterminado. El valor de esta expresión se compara con el identificador de caso o el primer caso. Si el primer caso coincide, se ejecuta el bloque de código asociado con el primer caso. Una vez que se encuentra la interrupción, la ejecución se detiene y saldrá de la instrucción de cambio. Sin embargo, si el caso no coincide, la ejecución fluye al siguiente caso. Si este caso coincide, entonces el segundo bloque de código se ejecuta de otra manera, el flujo verifica el siguiente caso de manera similar. Finalmente, si ningún caso coincide, se ejecuta el bloque de código predeterminado.

Ejemplos de declaración de cambio en C ++

Veamos algunos de los ejemplos de la instrucción switch en C ++.

Ejemplo 1

Este ejemplo dará más claridad sobre el uso de las declaraciones de cambio.

#include
using namespace std;
int main () (
char grade_report = 'D';
cout << "Your performance is: " << endl;
switch(grade_report) (
case 'A' :
cout << "Outstanding Result!\n" << endl;
break;
case 'B' :
cout << "Excellent Result!\n" << endl;
break;
case 'C' :
cout << "Good Result\n" << endl;
break;
case 'D' :
cout << "Satisfying Result\n" << endl;
break;
case 'F' :
cout << "Poor Result\n" << endl;
break;
default :
cout << "You did not appear for exam\n" << endl;
)
return 0;
)

Salida:

Su rendimiento es: Resultado satisfactorio

Ejemplo # 2

Este ejemplo muestra el uso de la instrucción break en un switch. Si la declaración de interrupción no se especifica después del caso, el flujo de ejecución continuará hasta que encuentre la declaración de interrupción.

#include
using namespace std;
int main() (
int range_of_number=50;
switch (range_of_number) (
case 10:
case 20:
case 30:
cout << "The number is 10 or 20 or 30 " << endl;
break;
case 50:
case 55:cout << "This case also executes because there is no break " << endl;
cout << "\n" << endl;
case 60:
cout << "The number is either 40 or 50 or 60" << endl;
break;
default:
cout << "The number is greater than 60" << endl; ))

Salida:

Este caso también se ejecuta porque no hay descanso
El número es 40, 50 o 60.

Ejemplo # 3

#include
using namespace std;
int main()
(
int x = 10, y = 5;
switch(x==y && x+y<10)
(
case 1:
cout << "hi" << endl;
break;
case 0:
cout << "bye" << endl;
break;
default:
cout << " Hello bye " << endl;
))

Salida:

adiós

Ejemplo # 4

Declaración de cambio anidado

#include
using namespace std;
int main() (
int ID = 300;
int password = 1000;
cout << "Enter Your ID:\n " << endl;
scanf("%d", & ID);
switch (ID) (
case 300:
cout << "Enter your password:\n " << endl;
scanf("%d", & password);
switch (password) (
case 1000:
cout << "Welcome to the portal\n" << endl;
break;
default:
cout << "Enter correct password" << endl;
break;
)
break;
default:
cout << "Enter correct ID" << endl;
break;
))

Salida:

Esto dependerá de los valores ingresados ​​por el usuario.

Salida 1:

Ingrese su ID: 300
Ingrese su contraseña: 1000
Bienvenido al portal

Salida 2:

Ingrese su ID: 100
Ingrese la identificación correcta

Salida 3:

Ingrese su ID: 300
Ingrese su contraseña: 000
Ingrese la contraseña correcta

Conclusión

Debe saber que el flujo básico y la funcionalidad de la instrucción switch siguen siendo los mismos en todos los lenguajes de programación. La diferencia solo se puede ver en la sintaxis general basada en el lenguaje de programación utilizado.

Artículos recomendados

Esta ha sido una guía para la declaración de cambio en C ++. Aquí discutimos el concepto, la sintaxis, el trabajo y los ejemplos de declaración de cambio en C ++. También puede consultar nuestros otros artículos sugeridos para obtener más información:

  1. Funciones de cadena de C ++
  2. ¿Qué es la clase de plantilla en C ++?
  3. Aplicaciones de C ++ en el mundo real
  4. Guía de declaración de casos en Java
  5. Guía para la declaración de cambio de PHP