Código
#include <stdio.h> int main(int argc, char *argv[]) { int contador = 1, puntos, contador2; while (contador <= puntos){ contador2 = 1; while (contador2 <= puntos) { contador2++; } contador++; } return 0; }
Así funciona perfectamente y me he tirado un buen rato dandole vueltas hasta que llegué a esa solución pero es que si lo cambias a:
Código
#include <stdio.h> int main(int argc, char *argv[]) { int contador = 1, puntos, contador2 = 1; while (contador <= puntos){ while (contador2 <= puntos) { contador2++; } contador++; } return 0; }
No funciona y no se porque, tiene algo que ver el declarar las variables e inicializarlas en el momento de declararlas? o es por el While? Estoy usando Devc++ como IDE.
EDIT: Sigo dandole vueltas al código y creo que es porque al estar anidados los whiles cuando llega al segundo que es dónde hace uso de la variable contador2 en el primer bucle cambia la variable y en los siguientes bucles ya no es igual, al darle el valor 1 a contador2 antes de empezar el segundo while cuando acaba vuelve a tener valor de 1 y se puede ejecutar de nuevo el segundo while...espero que se me entienda xD
Gracias por leer.