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

mostrar string distinto en una misma variable en C ?

Estas en el tema de mostrar string distinto en una misma variable en C ? en el foro de C/C++ en Foros del Web. hola, como puedo hacer que al ingresar un numero, muestre un string ? me dice error, aca tengo el código. @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código C: Ver ...
  #1 (permalink)  
Antiguo 03/09/2013, 08:18
 
Fecha de Ingreso: octubre-2011
Mensajes: 153
Antigüedad: 13 años, 1 mes
Puntos: 7
mostrar string distinto en una misma variable en C ?

hola, como puedo hacer que al ingresar un numero, muestre un string ? me dice error, aca tengo el código.

Código C:
Ver original
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <string.h>
  4.  
  5. int main() {
  6.    
  7.     int sexo = 0;
  8.     char tiposexo[10];
  9.    
  10.     printf("Ingrese un sexo: \"1\" para Hombre \"2\" para Mujer: ");
  11.     scanf("%d", & sexo);   
  12.    
  13.     if(sexo == 1){
  14.         tiposexo = "Hombre";
  15.     }else
  16.     {
  17.         tiposexo = "Mujer";
  18.     }  
  19.    
  20.     printf("El sexo es: %s ", tiposexo);
  21.    
  22.     return 0;
  23. }
__________________
Mi mail: [email protected]
  #2 (permalink)  
Antiguo 03/09/2013, 11:29
 
Fecha de Ingreso: julio-2012
Mensajes: 133
Antigüedad: 12 años, 5 meses
Puntos: 22
Respuesta: mostrar string distinto en una misma variable en C ?

Hola fcosum.

El error es causado por que el valor a la variable "tiposexo", deberías asignarlo mediante strcpy:
Código C:
Ver original
  1. if(sexo == 1)
  2.   strcpy(tiposexo, "Hombre");
  3. else
  4.   strcpy(tiposexo, "Mujer");

Otra opción es:
Código C:
Ver original
  1. ...
  2. int main()
  3. {
  4.   char *sexo[2] = {"Hombre", "Mujer"};
  5.   int op;
  6.  
  7.   printf("Ingrese un sexo: \"1\" para Hombre \"2\" para Mujer: ");
  8.  
  9.   do {
  10.     scanf("%d", &op);
  11.   } while (op < 1 || op > 2);
  12.  
  13.   printf("Sexo: %s", sexo[op-1]);
  14.   ...

Saludos.

Etiquetas: distinto, int, numero, string, variable
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 11:33.