Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: jescel_inf en 10 Diciembre 2012, 06:56 am



Título: examen de opciones multiples en c, guardando un valor deja de funcionar
Publicado por: jescel_inf en 10 Diciembre 2012, 06:56 am
perdón otra vez  aquí.

Esto de programar C me esta gustando mucho, apenas llevo poco tiempo que conozco este lenguaje, e intento hacer un examen de opción múltiple, que cuando mi respuesta sea correcta me guarde un 1 en un espacio de un arreglo  o me lo deje vació si es falso.

Al ejecutarse se queda colgado cuando ingreso la respuesta y después deja de funcionar.

Código:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>

main()
{
     
      int asignaciones[5];
      char respuesta;
      printf("cuanto es 2 + 2?\n");
      printf("a)2\n");
      printf("b)3\n");
      printf("c)4\n");
      printf("Dame tu respuesta\n"); 
      scanf("%s",respuesta);
      if(respuesta == 'c')
      {
      printf("es correcta");
      asignaciones[0]=1;
      }
      else{
      printf("es incorrecta");
      asignaciones[0]=0;
      }
       getch();   
}

1.- No se si este bien el if.
2.- No se si este bien la asignación en el espacio del arreglo.

De todos modos gracias por echarse una leida a mi tema, y  espero me pudieran orientar.


Título: Re: examen de opciones multiples en c, guardando un valor deja de funcionar
Publicado por: BlackZeroX en 10 Diciembre 2012, 07:01 am
en lugar de

scanf("%s",respuesta);

usa

scanf("%c",&respuesta);
o usa respuesta = getchar();

Aun que te recomiendo que mejor implementes esto: http://foro.elhacker.net/programacion_cc/para_que_dejeis_de_preguntar_de_una_vez_por_los_menus-t276719.0.html

Dulces Lunas!¡.


Título: Re: examen de opciones multiples en c, guardando un valor deja de funcionar
Publicado por: califrastilistico en 10 Diciembre 2012, 07:26 am
scanf("%d",&opcion);
   switch(opcion)
   {