Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: MarSalem en 10 Mayo 2018, 21:16 pm



Título: ayuda por favor!!
Publicado por: MarSalem en 10 Mayo 2018, 21:16 pm
 Hola!!
Estoy aprendiendo a programar en c. me dieron la siguiente consigna "se ingresaran numeros enteros  hasta que se ingrese el 235 . indicar cuantas veces ocurrio el ingreso del numero 23." este es mi codigo:

#include <stdio.h>

int main ()
{
   int CONT = 0 , DATO ;
   printf("\n\ningresar numeros enteros= ") ;
   scanf("%d" , DATO ) ;
   
   while ( DATO <= 235 ) {
      if ( DATO == 23 ); {
         CONT++;
      }
      
   }   
   printf("el numero 23 se ingreso = " , CONT ) ;
   
   return 0;
}
cuando lo corro me windows me notifica que el programa dejo de funcionar, que estoy haciendo mal?


Título: Re: ayuda por favor!!
Publicado por: ivancea96 en 10 Mayo 2018, 21:52 pm
Lo primero, en scanf pondrás &DATO, con &, ya que le tienes que pasar la dirección de memoria de tu variable (a diferencia de printf, que solo se pasa el valor)
Luego, el while acabará en un bucle infinito, ya que DATO siempre será el número que se haya ingresado; no cambia. Tendrías que poner un scanf dentro del while.
Por último, en el último printf pusiste ", CONT", pero no pusiste "%d" dentro de la cadena que vas a mostrar.


Título: Re: ayuda por favor!!
Publicado por: MarSalem en 10 Mayo 2018, 22:03 pm
muchas gracias!