O comando continue transfere o fluxo de processamento para o teste do comando de repetição.
Usando o continue com o for, antes do teste de associado ao for ser verificado ocorre o incremento das variáveis na seção de incremento do for.
O comando continue é parecido com o comando break. A diferença é que o comando continue interrompe a execução da iteração corrente passando para a próxima iteração do laço, se houver uma. No comando for o controle passa para o teste e o incremento do laço sejam executados, nos comandos while e do-while o controle passa para a fase de testes.
No trecho de programa abaixo o laço lê 100 números inteiros, caso o número seja negativo ele um novo número é lido.
for (i = 0; i < 100; i++)
{
scanf("%d", &num);
if (num < 0) continue;
printf("%d\n", num);
}
Exemplo:
void main()
{
float idade, total_idade=0, total_pessoa=0;
char resp;
while(1)
{
printf("\nIDADE: ");
scanf("%f",&idade);
if(idade <= 0)
{
printf("\nIdade Invalida, deseja continuar?(s/n)");
resp = getche();
if(resp == 's')
continue;
else break;
}
else{
total_idade += idade;
total_pessoa++;
}
}
printf("\nA Media de Idade e %f",(total_idade/total_pessoa));
getch();
}
Exercício:
Altere o programa que calcula o fatorial de um número, de maneira que seja perguntado ao usuário se ele deseja calcular ou não o fatorial de um próximo número. | |
Solução:
void main()
{
double n, resultado;
char c;
while(1)
{
resultado = 1;
printf("Entre com um numero: \n");
scanf("%lf",&n);
while(n > 0)
{
resultado = resultado * n;
n--;
}
printf("O fatorial eh igual a %lf \n",resultado);
printf("\nDeseja Continuar(s/n)? ");
c = getch();
if(c == 's')
continue;
else break;
clrscr();
}
}
Veja Mais:
0 comentários:
Postar um comentário