Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: Danirs en 21 Julio 2012, 14:55 PM

Título: Duda en C.
Publicado por: Danirs en 21 Julio 2012, 14:55 PM
Buenas!

Tengo el siguiente #include <stdio.h>
main()
{
      int primerNumero;
      int segundoNumero;
      int suma;
      printf("Introduce el primer numero %d", primerNumero);
      scanf("%d", &primerNumero);
      printf("Introduce el segundo numero %d", segundoNumero);
      scanf("%d", &segundoNumero);
      suma = primerNumero + segundoNumero;
      printf("El numero sumado es %d",suma);
      getchar();
      }

Y me compila y ejecuta perfectamente pero al ejecutar me sale:

"Introduce el primer numero 1996135988"(Y ahora introducir el numero deseado)
"Introduce el segundo numero 2686792"(Y aquí el segundo numero)


Los numero que aparecen no afectan a la suma ni nada porque al sumar 5 +5 da 10, pero esos números, por que aparecen?

Gracias!  ;D
     
Título: Re: Duda en C.
Publicado por: maxim_o en 21 Julio 2012, 15:27 PM

   printf("Introduce el primer numero %d", primerNumero);

printf("Introduce el segundo numero %d", segundoNumero);


Aparecen por que en printf le pasas %d, y primerNumero y segundNumero y estos no estan inicializados (tienen un valor aleatorio), despues con el scanf, le pasas el valor y lo guardas en esas variables, por eso luego el resultado es el correcto....

Deberia ser:


printf("Introduce el primer numero: ");
scanf("%d", &primerNumero);
printf("Introduce el segundo numero: ");
scanf("%d", &segundoNumero);
Título: Re: Duda en C.
Publicado por: manute_powa en 21 Julio 2012, 15:30 PM
Hola que tal.

Ese numero te aparece porque en la linea de introducir numero te sobra el %d...

en vez de asi  printf("Introduce el primer numero %d", primerNumero);
             
seria asi   printf("Introduce el primer numero: ", primerNumero);

Saludos
   
Título: Re: Duda en C.
Publicado por: Danirs en 21 Julio 2012, 16:28 PM
Vale gracias por las respuestas ya me ayudaron bastante  ;D