@Anghios said:
Oye haw, en el ultimo que subiste tengo un problema, el primero es por qué en
printf("%i", numero);
necesita detrás la variable? he probado en poner el 1º solo el "%i" y me sale un numero enorme xD
Y otra, por qué necesitas elscanf("%i", &numero);
si lo quito me sale otro número enorme negativo :S
bueno quizas hawkings te pueda dar alguna otra respuesta
pero te respondo aer si puede saciar tus dudas.
printf es una funcion de las bibliotecas del compilador C
que hace?, pues formatea una linea de salida de texto, al poner el '%i' formateas el texto a que alguna variable que vas a imprimir en pantalla se convierta en 'entero', por ello existen muchos especificadores como %c,%d,%f entre muchos otros.
te sale un numero enorme porque no estas asiganando que variable se formateara con el '%i', por ello te muestra cualquier 'basura'
resumiendo: si vas a mostrar variables en pantalla con printf, debes formatear el tipo de dato que se va a mostrar de dicha variable, y despues del texto poner nombre de la variable despues de una coma y seguir poniendo comas, si se ponen mas variables.
el scanf es algo asi, lo que hace es formatear el tipo de dato que se va a guardar en una variable, con el '%i' haces que se guarde como entero, despues de la coma se pone con ese signo '&' porque al parece esa funcion toma el nombre de la variable como puntero y con el '&' haces que se guarda el valor que se ingrese dentro de la direccion de memoria a la que ese puntero esta apuntando, y si no pones el '&' se guarda en cualquier lado y cualquier cosa esta guardando.
resumiendo: siempre debes colocar el formato o tipo de dato de la variable a la que se va a guardar cualquier valor, y usar el '&' para guardar correctamente el valor dentro de la direccion de memoria a la que apunta el nombre de la variable.
resumiento todo se podria decir que para mostrar variables o ingresar variables debes formatear el tipo de dato que s emuestra o se pida a guardar, usando los especificadores %i, %f, %c, %d , etc. y para scanf nunca olvidarte de antepones el '&' antes del nombre de la variable para que guarde bien el valor a la direccion de memoria a la que esa variable esta apuntando.
bueno espero que en algo te haya ayudado, sino comentalo y buscare algunos conceptos mas sencillos y concretos a lo que se refiere cada cosa o esperar aer si hawkings lo explica algo mejor je.
saludos