quarta-feira, 7 de dezembro de 2011

EXERCÍCIOS - ESTRUTURA DE SELEÇÃO (IF, IF - ELSE e SWITCH)

 

Vamos praticar um pouco um dos principais objetivos de nossa disciplina: aprender a aprender. Dado que todos já estudaram estrutura de seleção em pascal, vamos tentar utilizar este recurso de programação para responder os exercícios a baixo na linguagem C. Para isso consulte o livro e a apostila da UFMG disponibilizada no ambiente para identificar pequenas diferenças que existam entre o que vocês aprenderam em pascal e como se faz em C.

1. Fazer um programa para ler o nome, 2 notas, mostrar a média com a mensagem:

  • Inferior a 5,0 – “Reprovado”
  • De 5,1 a 6,9 – “Recuperação”
  • De 7,0 a 10 – “Aprovado”
  • Obs: mostrar o nome.

#include <stdio.h>

#include <conio.h>

#include <stdlib.h>

main()

{

char nome[15];

float nota1,nota2,media;

printf("Nome do Aluno: ");

scanf("%s",& nome);

printf("A primeira nota: ");

scanf("%f",& nota1);

printf("A segunda nota: ");

scanf("%f",& nota2);

media = (nota1 + nota2) / 2;

if (media >=7){

printf ("*************************************************************\n\n");

printf ("%s foi APROVADO! Media final ‚ %2.2f\n\n",nome,media);

printf ("*************************************************************\n\n");

}

if ((media >5.1) && (media < 5.9)){

printf ("*************************************************************\n\n");

printf ("%s esta de RECUPERACAO... Media final ‚ %2.2f\n\n",nome,media);

printf ("*************************************************************\n\n");

}

if (media <5){

printf ("*************************************************************\n\n");

printf ("%s foi REPROVADO... Media final ‚ %2.2f\n\n",nome, media);

printf ("*************************************************************\n\n");

}

getch();

}

3. Faça um programa que receba dois números inteiros, digitados pelo usuário e mostre o maior e o menor número digitado.

#include <stdio.h>

#include <conio.h>

#include <stdlib.h>

main()

{

float numero1,numero2;

printf("Numero 1: ");

scanf("%f",& numero1);

printf("Numero 2: ");

scanf("%f",& numero2);

if (numero1 > numero2){

printf ("*************************************************************\n\n");

printf ("O Numero 1:[ %2.2f ] EH! MAIOR QUE o Numero 2: [ %2.2f ] \n ",numero1,numero2);

printf ("*************************************************************\n\n");

}

else

printf ("*************************************************************\n\n");

printf ("O Numero 2: [ %2.2f ] EH! MAIOR QUE o Numero 1: [ %2.2f ]\n",numero2,numero1);

printf ("*************************************************************\n\n");

getch();

}:

4. Faça um programa que receba a idade de uma pessoa e mostre na saída em qual categoria ela se encontra:

  • 10-14 infantil
  • 15-17 juvenil
  • 18-25 adulto

#include <stdio.h>

#include <conio.h>

#include <stdlib.h>

main()

{

int faixaetaria;

printf("Digite a idade [0 PARA SAIR]: ");

scanf("%d",&faixaetaria);

if ((faixaetaria >=10)&& (faixaetaria <=14))

{

printf ("*************************************************************\n\n");

printf ("Esta idade %d Eh Classificada como INFANTIL \n\n ",faixaetaria);

printf ("*************************************************************\n\n");

}

if ((faixaetaria >=15)&& (faixaetaria <=17))

{

printf ("*************************************************************\n\n");

printf ("Esta idade %d Eh Classificada como JUVENIL \n ",faixaetaria);

printf ("*************************************************************\n\n");

}

if ((faixaetaria >=18)&& (faixaetaria <=25))

{

printf ("*************************************************************\n\n");

printf ("Esta idade %d Eh Classificada como ADULTO \n\n ",faixaetaria);

printf ("*************************************************************\n\n");

}

if (faixaetaria <=10)

{

printf ("*************************************************************\n\n");

printf ("Esta idade %d Eh Classificada como CRIANCA \n\n ",faixaetaria);

printf ("*************************************************************\n\n");

}

getch();

}

5. Dada uma letra, escreva na tela se essa letra é ou não uma vogal. Dica: a função toupper(letra) converte um char para caixa alta (maiúsculo) e a função tolower(letra) converte um char para caixa baixa (minúsculo).

#include <stdio.h>

#include <ctype.h> // para toupper

#include <conio.h>

#include <stdlib.h>

int main()

{

char letra;

printf("***************************************************\n");

printf("* ATENCAO: LETRAS SERAO CONVERTIDAS EM MINUSCULAS *\n");

printf("***************************************************\n");

printf("\n\n");

printf("Digite uma Letra: ");

scanf("%c", &letra);

//converte o conteudo digitado na variavel para minusculo

// poderia usar toupper para converter para maiúsculas.

letra = tolower(letra);

switch(letra)

{

case 'a': printf("VOGAL %c\n",letra); break;

case 'e': printf("VOGAL %c\n",letra); break;

case 'i': printf("VOGAL %c\n",letra); break;

case 'o': printf("VOGAL %c\n",letra); break;

case 'u': printf("VOGAL %c\n",letra); break;

default : printf("CONSOANTE %c:\n ",letra);

}

getch();

}

6. Elabora um programa que ao receber um numero inteiro determine retorne se o mesmo é par ou impar.

#include <stdio.h>

#include <conio.h>

#include <stdlib.h>

main()

{

int numero;

while (numero >1){

system("cls");

printf("*********************************************\n");

printf("* VERIFICAÇÃO DE NUMERO PAR E IMPAR 0= SAIR *\n");

printf("*********************************************\n");

printf("\n\n");

printf("Digite um NUMERO: ");

scanf("%d", &numero);

system("cls");

if (numero % 2 == 0)

{

printf("\n\n %d Um numero PAR",numero);

}

else

{

printf("\n\n %d Um numero IMPAR ",numero );

}

getch();

}

}:

7. Faça um programa que informe o mês de acordo com o número informado pelo usuário. (Exemplo: Entrada: 4. Saída: Abril).

#include <stdio.h>

#include <conio.h>

#include <stdlib.h>

main()

{

int numero;

char nomeMes;

printf("Numero: ");

scanf("%d",&numero);

switch (numero){

case 1: printf("\nMES DE JANEIRO"); break;

case 2: printf("\nMES DE FEVEREIRO"); break;

case 3: printf("\nMES DE MARÇO"); break;

case 4: printf("\nMES DE ABRIL"); break;

case 5: printf("\nMES DE MAIO"); break;

case 6: printf("\nMES DE JUNHO"); break;

case 7: printf("\nMES DE JULHO"); break;

case 8: printf("\nMES DE AGOSTO"); break;

case 9: printf("\nMES DE SETEMBRO"); break;

case 10: printf("\nMES DE OUTUBRO"); break;

case 11: printf("\nMES DE NOVEMBRO"); break;

case 12: printf("\nMES DE DEZEMBRO"); break;

default : printf("NUMERO DE MES INVALIDO");

}

getch();

}:

8. Faça um programa que leia 3 número inteiro os imprima em ordem crescente

#include <stdlib.h>

#include <conio.h>

#include <stdio.h>

main ()

{

int a,b,c;

int aux;

printf("entre com tres numeros: ");

scanf("%d %d %d",&a,&b,&c);

if(a>b)

{

aux=a;

a=b;

b=aux;

}

if(a>c)

{

aux=a;

a=c;

c=aux;

}

if(b>c)

{

aux=b;

b=c;

c=aux;

}

printf("\n\n");

printf("****************** ORDENADO ********************\n");

printf("%d * %d * %d\n", a,b,c);

printf("****************** ORDENADO ********************\n");

system("pause");

}

Eis acima vários exercicios respondidos. Assim, creio que os professores farão novas listas.

 

Nenhum comentário:

Postar um comentário