Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
For, continue | Instruções de controle
Noções Básicas de C
course content

Conteúdo do Curso

Noções Básicas de C

Noções Básicas de C

1. Introdução
2. Dados
3. Operadores
4. Instruções de controle
5. Funções
6. Ponteiros

bookFor, continue

Loop for

O loop for incorpora a inicialização do contador, a condição para sair do loop e a atualização do contador.

Vamos pegar o exemplo da lição anterior (exibindo elementos de um array) e reformulá-lo usando um loop for:

c

Main

copy
1234567891011121314
#include <stdio.h> int main() { int array[] = { 3, 6, 2, 134, 45, 2, 564, 8, 3, 531 }; for (int i = 0; i < 10; i++) { printf("Index of element: %d\tValue of element: %d\n", i, array[i]); } return 0; }

Flexibilidade dos loops

Você pode usar qualquer expressão válida como update counter. Isso significa que o contador pode se adaptar com base em qualquer regra válida, como (++x * 3) - 5.

Além disso, o contador pode incrementar por caracteres em vez de números.

c

Main

copy
12345678910
#include <stdio.h> int main() { for (char ch = 'a'; ch <= 'z'; ch++) { printf("ASCII value for %c is %d\n", ch, ch); } return 0; }

Nota

Lembre-se de que os caracteres são armazenados como números na memória.

Mesmo que você omita partes do loop, como a inicialização do contador, o programa ainda será compilado. Contudo, o ponto e vírgula ; continua sendo essencial:

c

Main

copy
12345678910111213
#include <stdio.h> int main() { int i = 0; // without counter initialization for (printf("It`s count initialization, but printf...\n"); i <= 4; i++) { printf("i = %d\n", i); } return 0; }

Você pode usar a vírgula , para separar partes dentro do loop:

c

Main

copy
1234567891011121314
#include <stdio.h> int main() { int i; int n; for (i = 0, n = 5; i <= 5; i++, n++) { printf("i = %d\t n = %d\n", i, n); } return 0; }

Continue

Em loops, os comandos break e continue são bastante úteis. Enquanto a instrução break força a saída do loop, o comando continue indica para pular para a próxima iteração.

Considere um programa projetado para excluir números inteiros negativos, utilizando o operador continue:

c

Main

copy
123456789101112131415161718192021
#include <stdio.h> int main() { int array[] = { 124, 235, -321, 32, 54, -549, 23445, 5534, -433 }; printf("Positive elements of array:\n"); for (int i = 0; i < 10; i++) { if (array[i] < 0) { continue; } printf("%d ", array[i]); } return 0; }

Novos operadores

Os seguintes operadores também podem funcionar como expressões para atualizar o contador:

OperadorExemplo de expressãoDescrição
+=a += 5Equivalente a a = a + 5
-=a -= 5Equivalente a a = a - 5
*=a *= 5Equivalente a a = a * 5
/=a /= 5Equivalente a a = a / 5
%=a %= 5Equivalente a a = a % 5
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 6
some-alt