Apresentação do comando de repetição
Laços
Laços são comandos usados sempre que uma ou mais instruções tiverem de ser repetidas enquanto uma certa condição estiver sendo satisfeita. Em C existem três comandos de laços:
for while do-while
Laço while
O segundo comando de laço em C é o while (que significa enquanto). À primeira vista, o laço while parece simples se comparado ao laço for; ele utiliza os mesmos elementos,mas estes são distribuídos de maneira diferente no programa.
Utilizamos o laço while quando o laço pode ser terminado inesperadamente, por condições desenvolvidas dentro do corpo do laço.
Exemplo:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h> /* Para getche() */
int main()
{
intcont = 0; /* Contador */
while(getche() != '\r') /* Enquanto não [Enter] */ { cont++; /* Corpo do laço*/ }
/* Fora do laço */ printf("Numero de caracteres = %d \n" , cont); system("PAUSE"); return 0;
}
O programa aguarda a digitação de uma frase. Cada caractere digitado é contado e acumulado na variável cont até que a tecla [ENTER] seja pressionada. O programa imprime o total de caracteres da frase.
O laço while termina quando a tecla [ENTER] é pressionada. Nesse caso, não conhecemos de antemão o número de iterações que serão executadas. Em situações semelhantes, o laço while é mais apropriado que o laço for.
Sintaxe:
O comando while consiste na palavra-chave while seguida de uma expressão deteste entre parênteses. Se a expressão de teste for verdadeirao corpo do laço é executado uma vez e a expressão de teste é avaliada novamente. Esse ciclo de teste e execução é repetido até que a expressão de teste se tome falsa (igual a zero), então o laço termina e ocontrole do programa passa para a linha seguinte ao laço.
O corpo de um while pode ter uma única instrução terminada por ponto-e-virgula,várias instruções entre chaves ou ainda nenhuma instrução, mantendo o ponto-e-vírgula.
while (condição) // Testando a condição
{