O comando continue em C

Por: Eduardo Casavella

A instrução continue é um comando de desvio incondicional.

Sua utilização dentro de um laço faz com que a execução da instrução atual (ou bloco de instruções atual) seja interrompida e passa para a próxima iteração do laço.

Note bem que o funcionamento do comando continue é diferente do comando break.

Enquanto no break termina o laço abruptamente, o comando continue não termina o laço e sim pula os comandos intermediários e passa para a próxima iteração.

No continue a condição do laço continua sendo testada, bem como o incremento também continua sendo executado.

Exemplo:

Vejamos um programa em linguagem C que utiliza o comando continue.

#include <stdio.h>
#include <conio.h>
int main(void)
{
	int i;
	
	for(i = 1; i < 10; i++)
	{
		if (i % 2 == 0) //se i for par não faz nada e pula para a próxima iteração
		{
			continue;
		}
		else // senão imprime os ímpares
		{
			printf("Numero: %d \n",i );
		}
		
		printf("Numero impar!\n\n");
	
	}
	
	printf("Final do programa!\n\n");
	getch();
	return 0;
}

 

TELA DE EXECUÇÃO

exemplo 1 comando continue

Tela de execução do comando continue

Observe que a execução do comando continue faz com que o programa pule para a próxima iteração do laço, sendo assim, o printf(“Numero impar!\n\n”); não é executado mesmo estando dentro do laço.

Como podemos, ver o bloco de instruções que contém esse printf foi interrompido e o programa pulou para a próxima iteração do loop toda vez que encontrou um valor par.

Mas e se ao invés de continue utilizassemos o break?

Neste caso, no primeiro valor par o break seria executado e o laço interrompido.

Veja o código usando break e a tela de execução.

#include <stdio.h>
#include <conio.h>

int main(void)
{
	int i;
	
	for(i = 1; i < 10; i++)
	{
		if (i % 2 == 0) //se i for par executa o break
		{
			break;
		}
		else // senão imprime os ímpares
		{
			printf("Numero: %d \n",i );
		}
		
		printf("Numero impar!\n\n");
	
	}
	
	printf("Final do programa!\n\n");
	getch();
	return 0;
}

 

 

TELA DE EXECUÇÃO

execução exemplo 2 comando continue

Tela de execução do comando continue

Note que ao encontrar o primeiro valor par o break foi executado, o que interrompeu o laço e foi para o final do programa.

Até a próxima!