Declaraciones de conmutación (características, desventajas y diferencias con los demás si)

En este tutorial de la declaración switch , vamos a aprender lo comunicado switch se , cuando se utiliza, ¿cuáles son los características y desventajas de la misma? Cómo comunicado switch es diferente de la sentencia if else ?

Hay un montón de sentencias condicionales disponibles en el mundo de la programación. Cada uno de ellos tiene sus propias ventajas y desventajas. En este artículo, vamos a discutir declaraciones Switch .

switch: Una sentencia compuesta

Esta declaración se utiliza cuando tenemos que seleccionar una opción de entre varias opciones sobre la base del valor de alguna variable.

Sintaxis para la declaración switch:

    switch(expression/condition)
{
case 1:
statements;
[break;]
case 2:
statements;
[break;]
default:
statements;
}

Aquí, la expresión puede ser cualquier cosa que vuelve enteros valor o valor de carácter, pero no un valor flotante.

Ejemplo:

#include <stdio.h>
int main()
{
int a = 2 ;
switch(a)
{
case 1:
printf("abc");
break;
case 2:
printf("xyz");
break;
case 3:
printf("pqr");
break;
default:
printf("stu");
}
return 0;
}

salida

xyz

Aquí, un es una expresión que devuelve un valor entero, ya que de valor es 2 case 2 será ejecutado. Tenga en cuenta que como hemos utilizado break declaración aquí solamente case 2 será ejecutado y después de que el control saldrá de la llave de cierre de la switch.

Nota: También hay que tener en cuenta que switch , case , default son todas las palabras clave.

Características de switch

  • ejecutar múltiples sentencias, en cualquier case, no hay ningún requisito de llaves como en caso de else.
  • El default puede o no utilizar el break comunicado.
  • Podemos usar el número case en orden ascendente o descendente o en cualquier orden aleatorio.
  • En tanto switch y case , utilizamos int o char constante.
  • Podemos utilizar default cualquier parte del programa, porque cada vez default se ejecuta solamente cuando no hay coincidencia de cualquier case.
  • Podemos ejecutar un conjunto común de declaración para múltiples casos.
  • Si hay alguna declaración en switch entonces debe ser en ningún case.

La ejecución de un conjunto común de declaraciones para múltiples casos se imprime

#include <stdio.h>
int main()
{
int a = 2 ;
switch(a)
{
case 1:
case 2:
printf("xyz");
break;
case 3:
printf("pqr");
break;
default:
printf("stu");
}
return 0;
}

salida

    xyz

Aquí, si incluso case 1 se encuentra XYZ.

desventajas de declaraciones switch

  1. float constante no puede ser utilizado en el switch, así como en el case.
  2. No se puede utilizar la expresión variable en case.
  3. No se puede utilizar la misma constante en dos casos diferentes.
  4. No podemos utilizar la expresión relacional en case.

Diferencia entre switch case y si- else

Sr Sin
El switch case
El si – else

1 En case de un switch, creamos tabla de saltos en tiempo de compilación se ejecuta sólo case seleccionada en tiempo de ejecución. En este case, que do no creamos una tabla de saltos y todos los casos se ejecutan en tiempo de ejecución.
2 Si un programa es grande usamos la declaración switch. Si un programa es grande estructura del programa a continuación, será más complejo.
3 Si un programa es grande, entonces switch case da el programa más estructurado. Si un programa es pequeño uso que si else.

Usando switch case para diseñar calculadora

#include<stdio.h>
int main()
{
int num1,num2,opt;
printf("Enter the first Integer: ");
scanf("%d",&num1);
printf("Enter the second Integer: ");
scanf("%d",&num2);
printf("1:addition n2: subtraction n3: multiplication n4: divisionn");
printf("Enter an correct option...: ");
scanf("%d",&opt);
switch(opt)
{
case 1:
printf("nAddition of %d and %d is: %d",num1,num2,num1+num2);
break;
case 2:
printf("nSubstraction of %d and %d is: %d",num1,num2,num1-num2);
break;
case 3:
printf("nMultiplication of %d and %d is: %d",num1,num2,num1*num2);
break;
case 4:
if(num2==0)
{
printf("OOps Devide by zeron");
}
else
{
printf("n Division of %d and %d is: %d",num1,num2,num1/num2);
}
break;
default:
printf("n Enter correct optionn");
}
return 0;
}

salida

    Enter the first Integer: 10
Enter the second Integer: 6
1:addition
2: subtraction
3: multiplication
4: division
Enter an correct option...: 3
Multiplication of 10 and 6 is: 60


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *