SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: cybergatita en Lunes 27 de Febrero de 2006, 02:38

Título: Duda Con Estructura De Control
Publicado por: cybergatita en Lunes 27 de Febrero de 2006, 02:38
Que tal chicos
este es un menu, donde llamo a funciones  para mostrar un ejemplo de su funcionamiento de cada una.
El problema lo tengo cuando la quiero llamar a la funcion con el numero 10 en adelante. osea que cuando necesito teclear dos numeros.

gracias chicos por su atencion de antemano:)
p.d ya estoy de regreso en el foro:)

void main()

{

  char opc;
   do

{


 gotoxy(10,2);
 printf("Eligue una opcion\n");
 gotoxy(10,6);
 printf("para checar un ejemplo de lo que hace la funcion\n");

 gotoxy(5,10);                                          
 printf("1.- ISLOWER");    
 gotoxy(5,12);                                      
 printf("2.- ISUPPER");  
 gotoxy(5,14);                                      
 printf("3.- ISALNUM");    
 gotoxy(5,16);                                      
 printf("4.- ISDIGIT");    
 gotoxy(5,18);                                      
 printf("5.- TOUPPER");  
 gotoxy(5,20);                                        
 printf("6.- TOLOWER");    
 gotoxy(5,22);
 printf("7.-  ISXDIGIT");
 gotoxy(20,10);
 printf("8.-  ISCNRTRL");
 gotoxy(20,12);
 printf("9.-  ISGRAPH");
 gotoxy(20,14);
 printf("10.- ISPRINT");
 gotoxy(20,16);
 printf("11.- ISSPACE");
 gotoxy(20,18);
 printf("12.- ISPUNCT");
 gotoxy(20,20);
 printf("13.- STRCPY");
 gotoxy(20,22);
 printf("14.- STRCMP");
 gotoxy(35,10);
 printf("15.- STRCAT");
 gotoxy(35,12);
 printf("16 .-STRNCPY");
 gotoxy(35,14);
 printf("17.- STRLEN");
 gotoxy(35,16);
 printf("18.- STRRCHR");
 gotoxy(35,18);
 printf("19.- STRTOK");
 gotoxy(35,20);
 printf("20.- STRSTR");
 gotoxy(35,22);
 printf("21.- MEMCMP");
 gotoxy(50,10);
 printf("22.- MEMCPY");
 gotoxy(50,12);
 printf("23.- MEMSET");
 gotoxy(50,14);
 printf("24.- SALIR");

opc=getch();
   

 

 switch(opc)

{

      case '1':            
          islowerf();  
          break;      
      case '2':              
          isuper();    
          break;        
      case '3':                
          esnum();        
          break;          
      case '4':              
          esdigito();    
          break;          
      case '5':                
          touper();    
          break;        
      case '6':                                                    
          tololler();  
               break;        
      case '7':
          esxdigito();
          break;
      case '8':
               control();
          break;
      case '9':
          esgrafo();
          break;
      case '10':
          printer();
          break;
      case '11':
          espacio();
          break;
      case '12':
          espun();
          break;
      case '13':
          copiacadena();
          break;
      case '14':
               iguales();
          break;
      case '15':
               concatena();
               break;
      case '16':
               copiacadena2();
               break;
      case '17':
          longitud();
          break;
      case '18':
          buscar();
          break;
      case '19':
          dividir();
          break;
      case '20':
          busqueda2();
          break;
      case '21':
          memc();
          break;
      case '22':
          memcp();
          break;
      case '23':
          mems();
          break;

      case '24':
          printf("\n\nBye.!HASTA PRONTO!. \npresiona cualquier tecla");
                 getch();

         }


    }while(opc!='24');


     }
Título: Re: Duda Con Estructura De Control
Publicado por: JuanK en Lunes 27 de Febrero de 2006, 13:48
1- si quieres más ayuda debes colocar el codigo formateado haciendo uso del tag [ CODE ]
2- para lo que necesitas de capturar más de una tecla debes usar la funcion scanf o gets
Título: Re: Duda Con Estructura De Control
Publicado por: cybergatita en Lunes 27 de Febrero de 2006, 22:39
Gracias juan lo tendre en cuenta

y perdonaran mi desconocimiento pero en realidad desconosco como formateo el codigo en tag,,

disculpa:(
soy muy novata


saludos
Título: Re: Duda Con Estructura De Control
Publicado por: JuanK en Lunes 27 de Febrero de 2006, 23:13
Ya veo,
siempre es conveniente leer las ayudas, para próxima:


Ayuda Tags (http://foros.solocodigo.com/index.php?act=legends&CODE=bbcode&s=)
Título: Re: Duda Con Estructura De Control
Publicado por: Geo en Martes 28 de Febrero de 2006, 06:39
El problema es que estás usando un tipo char, el cual es solo un caracter, por ello te falla cuando intentas leer dos (a partir de 10).

Una solución práctica sería usar un tipo int para la opción del menú, algo así:

Código: Text
  1.  
  2. ...
  3. int opcion;
  4.  
  5. printf( "Selecciona opción: " );
  6. scanf( "%d", &opcion );
  7.  
  8. switch( opcion ) {
  9.   case 1:
  10.      ...
  11.     break;
  12.   case ...
  13. }
  14. ...
  15.  
  16.  

Lo que te mencionó JuanK, se consigue simplemente escribiendo [_code_ ]código[_/code_] (sin los guiones).

Saludos,
José Jorge (Geo).