Hola! (siento tener que publicar esto, pero por más que le di vueltas, no encuentro una respuesta)
Estoy practicando los bucles for y me surgió un "problema" que me saco de onda:
No encuentro como explicar mi "problema" sin antes mostrar la salida...
Salida:
i vale 0
i vale 1
i vale 2
i vale 3
i vale 4
imprime_i() INICIALIZADA
i vale 5
y aqui el codigo:
#include <stdio.h>
void imprime_i(int x);
int main(){
int i, a = 5;
for(i=0; i < a; i++){
}
imprime_i(i);
return 0;
}
void imprime_i(int x){
printf("imprime_i() INICIALIZADA\n\ i vale %d\n", x);
}
¿Por que se imprime 0 en el primer ciclo si se supone que se incrementa 1 y después se imprime?
¿No se supone que tendría que valer 4 al final?
Aprovechando este post tengo una pregunta más:
Hice un programa que pide un valor numérico, pero al introducir una letra, se vuelve a repetir (como si fuera un bucle infinito) ¿como puedo hacer una excepción para controlar eso?
Gracias de antemano (: