ayuda compañeros, no se porque pasa esto, soy principiante

Iniciado por spiderboot, 16 Abril 2014, 21:36 PM

0 Miembros y 1 Visitante están viendo este tema.

spiderboot

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
   
int a;
float b;
     
     
      printf("introduzca un numero entero \t\n");
      scanf("%d", &a);
      printf("el numero que introujo es %d \t\n", a);
     
      printf("introduzca un numero decimal \t\n");
      scanf("&f", &b);
     
      printf("Los numero que introdujo son %d y %f", &a, &b);
       
    system("PAUSE");
    return EXIT_SUCCESS;
}


al ejecutar el programa en el primer printf, me da chance para escribir una cantidad, pero despues de eso el programa corre hasta el final sin que pueda introducir la segunda cantidad en decima, ¿que otro comando debo ingresar para que me de un segundo espacio para escribir la segunda cantidad?, gracias compañeros

leosansan

Si dejas un espacio en blanco antes del segundo scanf se soluciona ese problema.

Por cierrto, te falta la librería <cstdio> y en el segundo scanf es %f o %g, no &f.

Te dejo el código corregido:


Código (cpp) [Seleccionar]
#include <cstdlib>
#include <iostream>
#include <cstdio>
using namespace std;

int main(int argc, char *argv[])
{

      int a;
      float b;

      printf("introduzca un numero entero \t\n");
      scanf("%d", &a);
      printf("el numero que introujo es %d \t\n", a);

      printf("introduzca un numero decimal \t\n");
      scanf(" %f", &b);
      printf("el numero que introujo es %g \t\n", b);

      printf("Los numero que introdujo son %d y %g\n", a, b);

    system("PAUSE");
    return EXIT_SUCCESS;
}


Y es una mezcla de C y C++ no muy conveniente.

¡¡¡¡ Saluditos! ..... !!!!



spiderboot

Gracias compañero, mil gracias por tu tiempo y conocimiento