Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: TopoJunior en 4 Julio 2012, 07:49 am



Título: Como utilizar el gets
Publicado por: TopoJunior en 4 Julio 2012, 07:49 am
Cómo se utiliza el gets() ?????
Esque, tengo este código, pero no me deja ponerlo porque el scanf solo le 1 espacio...yy por eso.
Código
  1. #include <stdio.h>
  2. #define SM 60
  3. main()
  4. {
  5. int seg, resto, min;
  6. int segu, minut, restoo;
  7. char nombres[25];
  8. printf("Si quieres de minutos a segundos, escribelo, y si quieres de segundos a minutos escribe 1\n");
  9. scanf("%s", nombres);
  10. if(strcmp(nombres, "de minutos a segundos")==0)
  11. {
  12. printf("Vamos a convertir los minutos que quieres convertir a segundos.\n");
  13. scanf("%d", &min);
  14. min = min * SM;
  15. printf("El resultado es %d segundos.\n", min);
  16. }
  17. else if(strcmp(nombres, "de segundos a minutos")==0)
  18. {
  19. printf("Elige el numero de segundos a convertir\n");
  20. scanf("%d", &segu);
  21.    minut = segu / SM;
  22.    restoo = segu % SM;
  23. printf("%d segundos son, %d minutos y %d segundos", segu, minut, restoo);
  24. }
  25.  
  26. while(1);
  27. }


Título: Re: Como utilizar el gets
Publicado por: DickGumshoe en 4 Julio 2012, 10:27 am
El prototipo es: char *gets(char *cadena);

Por tanto, tendrías que poner:

gets(nombre_de_variable_de_tipo_*char);

Es decir:

Código
  1. #include <stdio.h>
  2. #define SM 60
  3. main()
  4. {
  5. int seg, resto, min;
  6. int segu, minut, restoo;
  7. char nombres[25];
  8. printf("Si quieres de minutos a segundos, escribelo, y si quieres de segundos a minutos escribe 1\n");
  9. gets(nombres);
  10. if(strcmp(nombres, "de minutos a segundos")==0)
  11. {
  12. printf("Vamos a convertir los minutos que quieres convertir a segundos.\n");
  13. scanf("%d", &min);
  14. min = min * SM;
  15. printf("El resultado es %d segundos.\n", min);
  16. }
  17. else if(strcmp(nombres, "de segundos a minutos")==0)
  18. {
  19. printf("Elige el numero de segundos a convertir\n");
  20. scanf("%d", &segu);
  21.    minut = segu / SM;
  22.    restoo = segu % SM;
  23. printf("%d segundos son, %d minutos y %d segundos", segu, minut, restoo);
  24. }
  25.  
  26. while(1);
  27. }
  28.  

Saludos.