ayuda por favor!!

Iniciado por MarSalem, 10 Mayo 2018, 21:16 PM

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

MarSalem

 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?
insta @marsquarepants

ivancea96

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.

MarSalem

insta @marsquarepants