It's simple, once you understand what a switch( )
is: a switch( )
is a simple goto
, sweetened , and with some other extra .
int num1 = 0,
num2 = 0;
switch( opcion ) {
case 1:
printf( "Ingrese el primer número:\n" );
scanf( "%d", &num1 );
break;
case 2:
printf( "Ingrese el segundo número:\n" );
scanf( "%d", &num2 );
break;
case 8:
case 3:
printf( "Suma: %d\n", suma( num1, num2 ) );
if( opcion == 3 )
break;
case 4:
printf( "Resta: %d\n", resta( num1, num2 ) );
if( opcion == 4 )
break;
case 5:
printf( "Multiplicación: %d\n", multiplica( num1, num2 ) );
if( opcion == 5 )
break;
case 6:
if( !num2 )
printf( "NO se puede dividir entre 0.\n" );
else
printf( "Division: %d\n", divide( num1, num2 ) );
if( opcion == 6 )
break;
case 7:
printf( "Factorial: %d\n", factorial( x ) );
break;
};
As you see, it is not necessary that the labels are ordered , or that all labels do something. Neither is required break
. And, what's more cool : The break
can be in a conditional!