Sumário de operadores de controle de fluxo em ANSI C

De MediaWiki do Campus São José
Revisão de 13h06min de 4 de maio de 2016 por Cleber.amaral (discussão | contribs) (Criou página com ' Operadores de controle de fluxo em ANSI C: Ramificação e repetição. Ramificação está decidindo que ações tomar de acordo com certas condições e repetição está tra...')
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)
Ir para navegação Ir para pesquisar

Operadores de controle de fluxo em ANSI C: Ramificação e repetição. Ramificação está decidindo que ações tomar de acordo com certas condições e repetição está tratando de quantas vezes realizar determinada ação.

Ramificação

Um ramo é chamado (executado) apenas se o programa escolher percorrê-lo através de testes lógicos. Desta forma é possível executar determinadas ações ou outras de acordo com condições que podem variar no tempo.

operador if

É a mais simples forma de ramificação. A expressão entre parênteses será testada, se for verdadeira um comando ou um bloco de comandos será executado. Se for falso este comando ou bloco será ignorado e o programa segue seu curso sem portanto executar certo trecho de código. Um teste é tido como verdadeiro se seu resultado é um valor diferente de zero. Abaixo dois exemplos, o primeiro executando um comando simples e outro um bloco (comandos compostos)

//comando simples
if (expressão_de_teste_logico)
  comando;
if (expressão_de_teste_logico)
{
   comando1;
   comando2;
   comandoN;
}

operador if em estrutura if...else

Pode-se também determinar o que se deve fazer se o teste for falso. Neste caso em uma execução apenas um trecho será executado, não há possibilidade de ambos serem executados na mesma execução.

if (expressão_de_teste_logico)
{
   comando1;
   comando2;
   comandoN;
}
else
{
   comando1_2;
   comando2_2;
   comandoN_2;
}

Operador if em cascata

Pode-se ainda configurar operadores if em cascata, desta forma pode-se testar diferentes condições lógicas. Apenas um trecho de código será executado em um ciclo de execução.

if (expressão_de_teste_logico)
{
   comando1;
   comando2;
   comandoN;
}
else if(expressão_de_teste_logico)
{
   comando1_2;
   comando2_2;
   comandoN_2;
}
else
{
   comando1_3;
   comando2_3;
   comandoN_3;
}

Operador ? :