Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Menu switch

Estas en el tema de Menu switch en el foro de C/C++ en Foros del Web. Tengo el siguiente codigo y lo que quiero es que cuando elija la opcion esta vuelva a desplegar el menu, excepto cuando seleccione salir del ...
  #1 (permalink)  
Antiguo 10/05/2012, 13:00
 
Fecha de Ingreso: enero-2012
Mensajes: 11
Antigüedad: 12 años, 3 meses
Puntos: 0
Menu switch

Tengo el siguiente codigo y lo que quiero es que cuando elija la opcion esta vuelva a desplegar el menu, excepto cuando seleccione salir del programa. En caso de que no se pueda hacer, hay alguna sugerencia para hacerlo??


codigo:

Código PHP:
main(){

int opc;

//Imprimir menu


   
printf("1-> rojo\n");
   
printf("2-> azul\n");
   
printf("3-> salir\n");
   
printf("Seleccione una Opcion:  ");

   
scanf("%d",&opcion);                                 

   if((
opcion!=1)&&(opcion!=2)&&(opcion!=3)){
        
printf("Por favor, seleccion una Opcion Correcta:  ");
        
scanf ("%d",&opcion);
   }

   switch(
opcion){
        case 
1:
        
printf("rojo\n");
        break; 
//->> No se puede poner un return o algo para que te devuelva al principio del programa??

        
case 2:
        
printf("azul\n");
        break; 
//->> No se puede poner un return o algo para que te devuelva al principio del programa??

        
case 3:
        break;
   }

Gracias de antemano.
  #2 (permalink)  
Antiguo 10/05/2012, 14:21
 
Fecha de Ingreso: abril-2010
Ubicación: Rosario
Mensajes: 1.850
Antigüedad: 14 años
Puntos: 228
Respuesta: Menu switch

Tienes que usar un do-while:

Código C:
Ver original
  1. int main() {
  2. int opc;
  3. do {
  4.  printf("1-> rojo\n");
  5.    printf("2-> azul\n");
  6.    printf("3-> salir\n");
  7.    printf("Seleccione una Opcion:  ");
  8.  
  9.    scanf("%d",&opcion);                                  
  10.  
  11.    if((opcion!=1)&&(opcion!=2)&&(opcion!=3)){
  12.         printf("Por favor, seleccion una Opcion Correcta:  ");
  13.         scanf ("%d",&opcion);
  14.    }
  15.  
  16.    switch(opcion){
  17.         case 1:
  18.         printf("rojo\n");
  19.         break; //->> No se puede poner un return o algo para que te devuelva al principio del programa??
  20.  
  21.         case 2:
  22.         printf("azul\n");
  23.         break; //->> No se puede poner un return o algo para que te devuelva al principio del programa??
  24.  
  25.         case 3:
  26.         break;
  27.    }
  28. }while(opcion != 3);
  29. }

El do-while es un ciclo que se repite mientras la condicion sea verdadera.

Saludos
  #3 (permalink)  
Antiguo 13/05/2012, 10:54
 
Fecha de Ingreso: enero-2012
Mensajes: 11
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: Menu switch

Gracias por responder, es lo que hacia falta.

Etiquetas: int, programa, switch
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:25.