14.03.2015 Views

Apostila C da UFMG - Universidade do Minho

Apostila C da UFMG - Universidade do Minho

Apostila C da UFMG - Universidade do Minho

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

4.2 - O Coman<strong>do</strong> switch<br />

O coman<strong>do</strong> if-else e o coman<strong>do</strong> switch são os <strong>do</strong>is coman<strong>do</strong>s de toma<strong>da</strong> de decisão. Sem dúvi<strong>da</strong> alguma o mais<br />

importante <strong>do</strong>s <strong>do</strong>is é o if, mas o coman<strong>do</strong> switch tem aplicações valiosas. Mais uma vez vale lembrar que devemos<br />

usar o coman<strong>do</strong> certo no local certo. Isto assegura um código limpo e de fácil entendimento. O coman<strong>do</strong> switch é<br />

próprio para se testar uma variável em relação a diversos valores pré-estabeleci<strong>do</strong>s. Sua forma geral é:<br />

switch (variável)<br />

{<br />

case constante_1:<br />

declaração_1;<br />

break;<br />

case constante_2:<br />

declaração_2;<br />

break;<br />

.<br />

.<br />

.<br />

case constante_n:<br />

decalração_n;<br />

break;<br />

default<br />

declaração_default;<br />

}<br />

Podemos fazer uma analogia entre o switch e a estrutura if-else-if apresenta<strong>da</strong> anteriormente. A diferença<br />

fun<strong>da</strong>mental é que a estrutura switch não aceita expressões. Aceita apenas constantes. O switch testa a variável e<br />

executa a declaração cujo case correspon<strong>da</strong> ao valor atual <strong>da</strong> variável. A declaração default é opcional e será<br />

executa<strong>da</strong> apenas se a variável, que está sen<strong>do</strong> testa<strong>da</strong>, não for igual a nenhuma <strong>da</strong>s constantes.<br />

O coman<strong>do</strong> break, faz com que o switch seja interrompi<strong>do</strong> assim que uma <strong>da</strong>s declarações seja executa<strong>da</strong>. Mas ele<br />

não é essencial ao coman<strong>do</strong> switch. Se após a execução <strong>da</strong> declaração não houver um break, o programa continuará<br />

executan<strong>do</strong>. Isto pode ser útil em algumas situações, mas eu recomen<strong>do</strong> cui<strong>da</strong><strong>do</strong>. Veremos agora um exemplo <strong>do</strong><br />

coman<strong>do</strong> switch:<br />

#include <br />

main ()<br />

{<br />

int num;<br />

printf ("Digite um numero: ");<br />

scanf ("%d",&num);<br />

switch (num)<br />

{<br />

case 9:<br />

printf ("\n\nO numero e igual a 9.\n");<br />

break;<br />

case 10:<br />

printf ("\n\nO numero e igual a 10.\n");<br />

break;<br />

case 11:<br />

printf ("\n\nO numero e igual a 11.\n");<br />

break;<br />

default:<br />

printf ("\n\nO numero nao e nem 9 nem 10 nem 11.\n");<br />

}<br />

}<br />

Pág. 27

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!