Você está na página 1de 16

Linguagem C

Estruturas de Repetio
Estrutura de Seleo
Estrutura de seleo

se (condio for Verdade) ento if (condio != 0) //no vai ;


//comando1; {
/*ou bloco de comandos;*/ //comando1;
fim_se; /*ou bloco de comandos;*/
}
Estrutura de Seleo
Estrutura de seleo composta

se (condio for Verdade) ento if (condio != 0) //no vai ;


comando1; {
{ou bloco de comandos}; comando1;
seno {ou bloco de comandos};
comando1; }
{ou bloco de comandos}; else //no vai ;
fim_se; {
comando1;
{ou bloco de comandos};
}
Estrutura de Seleo
Estrutura de seleo encadeada

se (condio1 for Verdade) ento if (condio1 != 0) //no vai ;


se (condio2 for Verdade) ento {
se (condio3 for Verdade) ento if (condio2 != 0) //no vai ;
//comando1; {
/*ou bloco de comandos*/ if (condio3 != 0) //no vai ;
fim_se; {
fim_se; //comando1
fim_se; /*ou bloco de comandos*/
}
}
}
Estrutura de Seleo
Estrutura de seleo encadeada composta

se (condio1 for Verdade) ento if (condio1 != 0) //no vai ;


se (condio2 for Verdade) ento {
se (condio3 for Verdade) ento if (condio2 != 0) //no vai ;
/*bloco de comandos*/ {
seno if (condio3 != 0) //no vai ;
/*bloco de comandos*/ {
fim_se; //condio 3 /*bloco de comandos*/
fim_se; //condio 2 }
seno else
/*bloco de comandos*/ {
fim_se; //condio 1 /*bloco de comandos*/
}
}
}
else
{
/*bloco de comandos*/
}
Estrutura de Seleo
Estrutura de mltipla escolha

escolha (X) switch (X)


caso E1: {
/*bloco de comandos*/ case E1:
caso E2: /*bloco de comandos*/
/*bloco de comandos*/ break;
caso E3: case E2:
/*bloco de comandos*/ /*bloco de comandos*/
caso Contrrio: //pode ser omitido break;
/*bloco de comandos*/ case E3:
fim_escolha; /*bloco de comandos*/
break;
default: //pode ser omitido
/*bloco de comandos*/
break;
}
Estrutura de Repetio
Repetio com teste no inicio

enquanto (condio1 for Verdade) faa while (condio1 != 0)


/*bloco de comandos*/ {
fim_enquanto; /*bloco de comandos*/
}

A varivel de controle (parte da condio) deve ser


incializada fora do lao, e incrementada dentro do mesmo;
Exemplo
#include <stdio.h>
#include <stdlib.h>

int main(){
int a; //Declarao de varivel

printf(Digite um nmero:\n);
scanf(%d,&a);
while(a != 0) //no vai ;
{
printf(%d\n,a+1);
scanf(%d,&a);
}
printf(Fim\n);
}
Estrutura de Repetio
Repetio com teste no fim

faa do
/*bloco de comandos*/ {
enquanto(condio1 for Verdade); /*bloco de comandos*/
}while (condio1 != 0);

A varivel de controle (parte da condio) pode ser


incializada dentro do lao. Cuidar para no executar a
condio de parada.
Exemplo
#include <stdio.h>
#include <stdlib.h>

int main(){
int a; //Declarao de varivel

printf(Digite um nmero:\n);
do //no vai ;
{
scanf(%d,&a);
if (a !=0)
{
printf(%d\n,a+1);
}
}while(a != 0);
printf(Fim\n);
}
Estrutura de Repetio
Repetio com varivel de controle incremental

para X inicio VarInicio fim VarFim passo VarPasso faa


/*bloco de comandos*/
fim_para;

for(X = VarInicio ; X <= VarFim ; X = X+VarPasso)


{
/*bloco de comandos*/
}

A varivel de controle automaticamente incrementada no


fim do lao.
Exemplo
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main(){
int a; //Declarao de varivel

printf(Digite um nmero:\n);
for(a=1;a<=10;a=a+1) //no vai ;
{
printf(%d %f %f\n,a,sqrt(a),pow(a,2));
}

printf(Fim\n);
}
Estrutura de Repetio
Comando break;
Usado para parar a execuo de um lao.
for(X = VarInicio ; X <= VarFim ; X = X+VarPasso)
{
/*bloco de comandos*/
break;
}

A execuo do lao interrompida ao encontrar o break.


Exemplo
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main(){
int a; //Declarao de varivel

printf(Digite um nmero:\n);
a=0;
while(a<=10) //no vai ;
{
printf(%d %f %f\n,a,sqrt(a),pow(a,2));
a=a+1;
if ((a%2) == 0)
{
break;
}
}

printf(Fim\n);
}
Estrutura de Repetio
Comando continue;
Usado para passar para prxima iterao do um lao.
for(X = VarInicio ; X <= VarFim ; X = X+VarPasso)
{
/*bloco de comandos*/
continue;
}

A iterao atual do lao interrompida e a prxima


iniciada.
Exemplo
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main(){
int a; //Declarao de varivel

printf(Digite um nmero:\n);
a=0;
for(a=0;a<=10;a=a+1) //no vai ;
{
if ((a%2) == 0)
{
continue;
}
printf(%d %f %f\n,a,sqrt(a),pow(a,2));
}

printf(Fim\n);
}

Você também pode gostar