- Detalhes
- Última atualização: 26 de maio de 2021
O que é Loop em C?
Demonstrações de Looping em C execute a sequência de instruções muitas vezes até que a condição declarada se torne falsa. Um loop em C consiste em duas partes, um corpo de um loop e uma instrução de controle. A instrução de controle é uma combinação de algumas condições que direcionam o corpo do loop a ser executado até que a condição especificada se torne falsa. O objetivo do loop C é repetir o mesmo código várias vezes.
Neste tutorial, você aprenderá-
- O que é Loop em C?
- Tipos de Loops em C
- While Loop em C
- Loop Do-While em C
- Para loop em C
- Declaração de quebra em C
- Continue a declaração em C
- Qual loop selecionar?
Tipos de Loops em C
Dependendo da posição de uma instrução de controle em um programa, o loop em C é classificado em dois tipos:
1. Loop de entrada controlada
2. Saia do circuito controlado
Em um loop de controle de entrada em C, uma condição é verificada antes de executar o corpo de um loop. Também é chamado de loop de pré-verificação.
Em um sair do circuito controlado , uma condição é verificada após a execução do corpo de um loop. Também é chamado de loop de pós-verificação.
Loop de amostra
como recuperar fotos apagadas da galeria
As condições de controle devem ser bem definidas e especificadas, caso contrário, o loop será executado um número infinito de vezes. O loop que não para de executar e processa as instruções várias vezes é chamado como um Loop infinito . Um loop infinito também é chamado de ' Loop sem fim . ' A seguir estão algumas características de um loop infinito:
1. Nenhuma condição de encerramento é especificada.
2. As condições especificadas nunca se encontram.
A condição especificada determina se o corpo do loop deve ser executado ou não.
A linguagem de programação 'C' nos fornece três tipos de construções de loop:
1. O loop while
2. O ciclo do-while
3. O loop for
While Loop em C
Um loop while é a estrutura de loop mais direta. Enquanto a sintaxe de loop na linguagem de programação C é a seguinte:
Sintaxe do While Loop em C:
while (condition) { statements; }
É um loop controlado por entrada. No loop while, uma condição é avaliada antes de processar um corpo do loop. Se uma condição for verdadeira, então e somente então o corpo de um loop é executado. Depois que o corpo de um loop é executado, o controle volta novamente ao início e a condição é verificada se for verdadeira, o mesmo processo é executado até que a condição se torne falsa. Quando a condição se torna falsa, o controle sai do loop.
Depois de sair do loop, o controle vai para as instruções que estão imediatamente após o loop. O corpo de um loop pode conter mais de uma instrução. Se contiver apenas uma instrução, as chaves não são obrigatórias. É uma boa prática usar as chaves, mesmo que tenhamos uma única instrução no corpo.
No loop while, se a condição não for verdadeira, o corpo de um loop não será executado, nem mesmo uma vez. É diferente no loop do while, que veremos em breve.
O programa a seguir ilustra o loop while no exemplo de programação C:
#include #include int main() { int num=1; //initializing the variable while(num<=10) //while loop with condition { printf('%d ',num); num++; //incrementing operation } return 0; }
Saída:
1 2 3 4 5 6 7 8 9 10
O programa acima ilustra o uso do loop while. No programa acima, imprimimos uma série de números de 1 a 10 usando um loop while.
- Inicializamos uma variável chamada num com valor 1. Vamos imprimir de 1 a 10, portanto, a variável é inicializada com valor 1. Se você quiser imprimir a partir de 0, atribua o valor 0 durante a inicialização.
- Em um loop while, fornecemos uma condição (num<=10), which means the loop will execute the body until the value of num becomes 10. After that, the loop will be terminated, and control will fall outside the loop.
- No corpo de um loop, temos uma função de impressão para imprimir nosso número e uma operação de incremento para incrementar o valor por execução de um loop. Um valor inicial de num é 1, após a execução, ele se tornará 2, e durante a próxima execução, ele se tornará 3. Este processo continuará até que o valor se torne 10 e então imprimirá a série no console e encerrará o loop .
n é usado para fins de formatação, o que significa que o valor será impresso em uma nova linha.
Loop Do-While em C
Um loop do ... while em C é semelhante ao loop while, exceto que a condição é sempre executada após o corpo de um loop. Também é chamado de loop controlado por saída.
A sintaxe de do ... while loop na linguagem de programação C é a seguinte:
Sintaxe de Do-While Loop em C:
do { statements } while (expression);
Como vimos em um loop while, o corpo é executado se e somente se a condição for verdadeira. Em alguns casos, temos que executar um corpo do loop pelo menos uma vez, mesmo se a condição for falsa. Esse tipo de operação pode ser obtido usando um loop do-while.
No loop do-while, o corpo de um loop é sempre executado pelo menos uma vez. Depois que o corpo é executado, ele verifica a condição. Se a condição for verdadeira, ele executará novamente o corpo de um loop, caso contrário, o controle será transferido para fora do loop.
Semelhante ao loop while, uma vez que o controle sai do loop, as instruções imediatamente após o loop são executadas.
A diferença crítica entre o loop while e do-while é que o loop while é escrito no início. No loop do-while, a condição while é escrita no final e termina com um ponto e vírgula (;)
O seguinte programa de loop em C ilustra o funcionamento de um loop do-while:
Abaixo está um loop do-while no exemplo C para imprimir uma tabela de número 2:
#include #include int main() { int num=1; //initializing the variable do //do-while loop { printf('%d ',2*num); num++; //incrementing operation }while(num<=10); return 0; }
Saída:
2 4 6 8 10 12 14 16 18 20
No exemplo acima, imprimimos a tabuada de 2 usando um loop do-while. Vamos ver como o programa conseguiu imprimir a série.
- Primeiro, inicializamos uma variável 'num' com valor 1. Em seguida, escrevemos um loop do-while.
- Em um loop, temos uma função de impressão que imprimirá a série multiplicando o valor de num por 2.
- Após cada incremento, o valor de num aumentará em 1 e será impresso na tela.
- Inicialmente, o valor de num é 1. Em um corpo de um loop, a função de impressão será executada da seguinte maneira: 2 * num onde num = 1, então 2 * 1 = 2, portanto, o valor dois será impresso. Isso continuará até que o valor de num torne-se 10. Após esse loop será encerrado e uma instrução imediatamente após o loop será executada. Neste caso, retorne 0.
Para loop em C
Um laço for é uma estrutura de laço mais eficiente na programação 'C'. A estrutura geral da sintaxe do loop for em C é a seguinte:
Sintaxe do For Loop em C:
for (initial value; condition; incrementation or decrementation ) { statements; }
- O valor inicial do loop for é executado apenas uma vez.
- A condição é uma expressão booleana que testa e compara o contador com um valor fixo após cada iteração, interrompendo o loop for quando false é retornado.
- O incremento / decremento aumenta (ou diminui) o contador em um valor definido.
O programa a seguir ilustra o loop for no exemplo de programação C:
#include int main() { int number; for(number=1;number<=10;number++) //for loop to print 1-10 numbers { printf('%d ',number); //to print the number } return 0; }
Saída:
1 2 3 4 5 6 7 8 9 10
O programa acima imprime a série de números de 1 a 10 usando o loop for.
- Declaramos uma variável de um tipo de dados int para armazenar valores.
- No loop for, na parte de inicialização, atribuímos o valor 1 ao número da variável. Na parte da condição, especificamos nossa condição e, em seguida, a parte do incremento.
- No corpo de um loop, temos uma função de impressão para imprimir os números em uma nova linha no console. Temos o valor um armazenado em número, após a primeira iteração o valor será incrementado, e se tornará 2. Agora o número da variável tem o valor 2. A condição será verificada novamente e como a condição é verdadeira o loop será executado, e vai imprimir dois na tela. Este loop continuará em execução até que o valor da variável se torne 10. Depois disso, o loop será encerrado e uma série de 1-10 será impressa na tela.
Em C, o loop for pode ter várias expressões separadas por vírgulas em cada parte.
Por exemplo:
for (x = 0, y = num; xAlém disso, podemos pular a expressão de valor inicial, condição e / ou incremento adicionando um ponto-e-vírgula.
Por exemplo:
int i=0; int max = 10; for (; iObserve que os loops também podem ser aninhados onde há um loop externo e um loop interno. Para cada iteração do loop externo, o loop interno repete todo o seu ciclo.
Considere o exemplo a seguir, que usa loop for aninhado na programação C para gerar uma tabela de multiplicação:
#include int main() { int i, j; int table = 2; int max = 5; for (i = 1; i <= table; i++) { // outer loop for (j = 0; j <= max; j++) { // inner loop printf('%d x %d = %d ', i, j, i*j); } printf(' '); /* blank line between tables */ }}Saída:
1 x 0 = 0 1 x 1 = 1 1 x 2 = 2 1 x 3 = 3 1 x 4 = 4 1 x 5 = 5 2 x 0 = 0 2 x 1 = 2 2 x 2 = 4 2 x 3 = 6 2 x 4 = 8 2 x 5 = 10O aninhamento de loops for pode ser feito em qualquer nível. Os loops aninhados devem ser adequadamente indentados para tornar o código legível. Em algumas versões de 'C', o aninhamento é limitado a 15 loops, mas alguns fornecem mais.
Os loops aninhados são usados principalmente em aplicativos de array, que veremos em outros tutoriais.
Declaração de quebra em C
A instrução break é usada principalmente na instrução switch. Também é útil para interromper imediatamente um loop.
Consideramos o seguinte programa que introduz uma interrupção para sair de um loop while:
#include int main() { int num = 5; while (num > 0) { if (num == 3) break; printf('%d ', num); num--; }}Saída:
5 4Continue a declaração em C
Quando você deseja pular para a próxima iteração, mas permanecer no loop, deve usar a instrução continue.
Por exemplo:
#include int main() { int nb = 7; while (nb > 0) { nb--; if (nb == 5) continue; printf('%d ', nb); }}Saída:
6 4 3 2 1Portanto, o valor 5 é ignorado.
Qual loop selecionar?
A seleção de um loop é sempre uma tarefa difícil para um programador, para selecionar um loop siga os seguintes passos:
- Analise o problema e verifique se ele requer um pré-teste ou um loop de pós-teste.
- Se o pré-teste for necessário, use um tempo ou para um loop.
- Se o pós-teste for necessário, use um loop do-while.
Resumo
- O loop é um dos conceitos-chave em qualquer linguagem de programação.
- Um bloco de instruções de controle de loop em C é executado várias vezes até que a condição se torne falsa.
- Os loops são de 2 tipos: controlados por entrada e controlados por saída.
- A programação 'C' nos fornece 1) enquanto 2) do-while e 3) para loop.
- A programação do loop C For e while são circuitos controlados por entrada.
- Do-while é um loop controlado por saída.