include <stdio.h>
void main () { int i;
for (i=1; i<=100; i++); printf("%d\n", i); }
No momento em que eu compilo meu programa, vem o numero 101, por quê?
include <stdio.h>
void main () { int i;
for (i=1; i<=100; i++); printf("%d\n", i); }
No momento em que eu compilo meu programa, vem o numero 101, por quê?
Oi Gabriel,
O problema está no ponto e vírgula (;) após o for. Esse ponto e vírgula encerra o loop for sem executar nenhum comando dentro dele.
O printf é executado apenas uma vez, após o loop terminar, e o valor de i nesse momento é 101, pois o loop incrementa i até que a condição i <= 100 seja falsa.
Para corrigir, remova o ponto e vírgula após o for e coloque o printf dentro do bloco do loop, usando chaves {}:
#include <stdio.h>
void main() {
int i;
for (i = 1; i <= 100; i++) {
printf("%d\n", i);
}
}
Dessa forma, o printf será executado a cada iteração do loop, imprimindo os números de 1 a 100. 👍
Para saber mais: Estrutura de repetição for em C
Continue praticando e explorando a linguagem! 💪 💻