Problema al ejecutar un codigo Estructura de control IF [C]

Iniciado por M4RQUS, 21 Abril 2018, 20:28 PM

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

M4RQUS

Buen dia gente, hoy empece a programar en C y me ocurrio algo curioso. Cuando intento ejecutar estas lineas de codigo

-------------------------------------------------------------------------

// Adivina el numero entre 0 y 10

#include <stdio.h>

int main(){

int nmr,eli;

nmr = 5;

printf("Elija un numero del 1 al 10 :");
scanf("%i",eli);

if(eli == nmr){

printf("Adivino! el numero es: %i \n",nmr);

}
else if(eli < nmr){

printf("Muy Bajo! intente de nuevo \n");

}
else if(eli > nmr) {
printf("Muy Alto! Intente de nuevo \n");
}

system("pause");
return 0;
}

-------------------------------------------------------------------------


por alguna extraña razon me aparece esto:

adivina el numero.exe has stopped working
A problem caused the program to stop working correctly. Windows will close the program and notify you if a solution is available.

el ide que estoy usando es DEV C++

Alguna idea??
"Paciencia Virtud de Sabios"
System.out.println("Iniciado pero con ganas de Aprender");

engel lex

scanf("%i",eli);

a scanf debes pasar la variable por referencia si no, el intentará leer la basura de la ram contenida en esa variable y entonces colocar el contenido que escribiste en esa posición de memoria indicada... lo que usualmente lleva a un error falta por intentar escribir una sección de memoria protegida


debes usar
scanf("%i",&eli);
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

M4RQUS

Cita de: engel lex en 21 Abril 2018, 20:50 PM
scanf("%i",eli);

a scanf debes pasar la variable por referencia si no, el intentará leer la basura de la ram contenida en esa variable y entonces colocar el contenido que escribiste en esa posición de memoria indicada... lo que usualmente lleva a un error falta por intentar escribir una sección de memoria protegida


debes usar
scanf("%i",&eli);


Muchisimas gracias!!!
"Paciencia Virtud de Sabios"
System.out.println("Iniciado pero con ganas de Aprender");