Buscar

Estruturas de decisão em C

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 3 páginas

Prévia do material em texto

if .. / if..else / if… else if … / switch Qual escolher?
���
�
If...else - Comando que testa uma condição e dependendo do resultado, o fluxo do programa seguirá caminhos diferentes. Também conhecido como estrutura de decisão, seleção ou condicional. Três tipos de comandos if...else, são eles:
If simples - Após a realização do teste, só será executado o bloco de comandos se o resultado for verdadeiro. Nesse caso, o else não estará presente porque nada será executado.
�		 �
If composto - Após a execução do teste, tanto será executado um bloco de comandos se o resultado for verdadeiro quanto será executado outro bloco de comandos se o resultado for falso.
�				�
If encadeados - Após a realização do teste, será executado um bloco de comandos se o resultado for verdadeiro, caso não seja, outro teste será feito até que todas as possibilidades de respostas sejam contempladas. Se o último else não estiver presente, o que não é aconselhável, nada acontecerá para a situação não atendida pelos testes.
�					�
O teste é uma expressão relacional que compara os valores dos seus operandos. A expressão relacional é formada, obrigatoriamente, por um operador relacional e dois operandos.
Ordenação através de uma combinação dois a dois com troca quando necessário.
A estrutura switch (Múltiplas escolhas)... case é conhecida como uma alternativa de múltiplas escolhas, isto é, quando precisarmos usar if... else if....Todavia, ela só pode ser usada quando a variável, ou expressão que a controla, for do tipo int ou char de um caracter e somente um valor puder ser colocado em cada case. Para resolver esse problema, fazemos uso do comando break; no final de cada caso. Vale ressaltar que o default não é obrigatório, mas serve para exibir alguma mensagem no caso do valor não ser igual a nenhum dos rótulos. Em alguns momentos, poderemos não fazer uso do break;
�					�
Exemplo: 1) Se else não tiver nenhum comando para ser executado, devemos usar assim: else {}? R: Não. Você não deve criar esse hábito.
Exemplo: 2) Quando uno duas expressões relacional por um dos operadores lógico && ou ||, preciso sempre colocá-las entre parênteses? R: Não, mas nada lhe impede.
Exemplo: 3) Os Operadores Relacionais podem ser usados para comparar vetores de char? R: Não. Somente a função strcmp() da biblioteca string.h .
Exemplo: 4) É obrigado dar espaço depois da palavra case na estrutura do switch? R: Sim.
	 1a Questão (Ref.: 201309287250)
	
	A professora de Linguagem de Programação I pediu aos alunos que construíssem um código para que permitisse a entrada de um número inteiro e exibisse umas das mensagens: Positivo / Zero / Negativo
Eles acharam esse pedido estranho, visto que era um programa clássico.
Ao término do tempo que ela deu para o desenvolvimento, pediu que eles comparassem as duas soluções que colocou no quadro.
Leia as afirmativas abaixo e escolha a alternativa correta.
I na solução A, se o número fosse positivo, era testado três vezes.
II na solução B, se o número fosse positivo, era testado uma vez. 
III Se as duas soluções produzem a mesma saída podemos afirmar que, em termos de eficiência, não importa a quantidade de testes.
IV A solução A poderia usar um if simples e um if composto ao invés de três ifs simples.
V A solução B poderia testar se era zero no primeiro if e menor do que zero no outro desde que estivessem presentes as mensagens correspondentes aos testes e a mensagem Positivo no else.
	 
	II, III e IV estão corretas 
	 
	I, II e V estão corretas 
	
	I, II, IV e V estão corretas 
	
	II e IV estão corretas 
	
	I, II e III estão corretas 
	 2a Questão (Ref.: 201309233590)
	
	Qual dos comandos abaixo permite que um bloco de comandos seja executado enquanto a variável num seja diferente de 0?
	
	enquanto (num > 0)
	 
	while (num != 0)
	
	while (num == 0)
	
	for ( i = 0; i == num; i++)
	
	for (i = num; i > 0; i++)
	 3a Questão (Ref.: 201309296484)
	
	A estrutura de decisão switch é extremamente poderosa na linguagem C. Dado o código:
#include < stdio.h>
#include < stdlib.h>
void main(){
  int a= 3; int b =2;
  switch(a){
    case  1: a++; break;
    case  2: a-=b++; break;
    case  3: if(b)a+=b; 
    default: a = 1;    
  }         
 printf("%d", a+b);  
 system("PAUSE");
}
Selecione a opção correta:
	
	 
	O programa exibirá 3
	 
	Ocorrerá um erro
	
	O programa exibirá 7
	
	O programa exibirá 5
	
	O programa exibirá 1

Continue navegando