Escolar Documentos
Profissional Documentos
Cultura Documentos
Comandos de Seleo
Expresses lgicas Comando IF Comando sw
Condies ou Expresses
Lgicas
A condio na linguagem C definida como uma expresso que pode
ser verdadeira ou falsa.
Por exemplo, (3 > 2) uma expresso lgica que possui valor verdadeiro.
Por outro lado, (4 < 1) uma expresso lgica que possui valor falso.
Operadores Relacionais
== Igual a
!= Diferente
>= Maior ou igual
> Maior que
< Menor que
<= Maior ou igual
Operadores Lgicos
|| OU lgico
&& E lgico
! Negao
Precedncia de Operadores
Comando IF
O comando IF serve para alterar o fluxo de execuo de um programa em
C baseado no valor, verdadeiro ou falso, de uma expresso lgica.
Formato 1:
if (expr_log)
comando1; // executado se "expr_log" for
verdadeira
comando2; // executado sempre independente da
condio
Formato 2:
if (expr_log)
comando1; // executado se "expr_log" for
verdadeira
else comando2; // executado se "expr_log" for falsa
comando3; // executado sempre, independente
// do resultado do teste
Formato 3:
if (expr_log)
{
comando1; // executados se "expr_log" for
verdadeira
comando2;
comando3;
}
else
{
comando4; // executado se "expr_log" for falsa
comando5;
comando6;
}
comando7; // executado sempre independente da
condio
comando8; // executado sempre independente da
condio
Aninhamento de Ifs
if (expr_log)
if (expr_log2)
comando2; // executado se "expr_log" e
// "expr_log2" forem AMBAS
verdadeiras
comando3; // executado sempre
if (expr_log)
if (expr_log2)
comando2; // executado se "expr_log" e
// "expr_log2" forem AMBAS
verdadeiras
else comando3; // executado se "expr_log" for
VERD
// e se "expr_log2" for FALSA
comando4; // executado sempre
if (expr_log)
{
if (expr_log2)
comando2;
}
else comando3; // executado se "expr_log" for FALSO
// pertence ao primeiro IF
comando4; // executado sempre
Exemplo 4:
if (expr_log)
{
comando1; // executado se expr_log for
VERDADEIRA
comando11;
if (expr_log2)
{
comando2; // executado se expr_log e
expr_log2
comando21; // forem ambas VERDADEIRAS
}
else
{
comando3; // executado se expr_log for
VERDADEIRA
comando31; // e expr_log2 for FALSA
}
comando4; // executado se expr_log for
VERDADEIRA
}
else
{
comando5; // executado se expr_log for FALSA
comando51;
if (expr_log3)
{
comando6; // executado se expr_log for FALSA
comando61; // e expr_log3 for VERDADEIRA
}
else
{
comando7; // executado se expr_log for FALSA
comando71; // e expr_log3 for FALSA
}
comando8; // executado sempre que expr_log for
FALSA
}
comando9; // executado sempre
Comando SWITCH
int op;
case VALOR1:
comando1; // executa estes comandos se
comando11; // op for igual a VALOR1
comando111;
break;
case VALOR2:
comando2; // executa estes comandos se
comando22; // op for igual a VALOR2
comando222;
break;
default:
comando3; // executa estes comandos se
comando33; // op for diferente de VALOR1 e
comando333; // de VALOR2
Observaes:
O parmetro do switch deve ser int ou char
O valor aps o case dever ser uma CONSTANTE
Muito Cuidado: A falta do break faz o controle
passar ao prximo case
Atribuio Condicional
a = (a>5)? 10 : 50;
Este comando equivalente a
if(a>5)
a = 10;
else a = 50;