Operador Ternário “? :” em C

Sintaxe:
Expressão_de_teste ? 
               Expressão_executada_se_verdadeiro :
               Expressão_executada_se_falso;

Um comando idêntico ao comando de seleção onde há uma expressão de teste com uma alternativa (if-else) é o operador “? :”


Este operador é preferível quando for necessário utilizar uma expressão de teste mais sintética.
Este operador é denominado de ternário pois requer três operandos.
Exemplo:
#include <stdio.h>
#include <conio.h>

void main()
{
int a,b;
printf("Entre com dois numeros: \n");
scanf("%d %d",&a,&b);

a == b ? printf("Iguais") :  printf("Diferentes");

//    tambem poderiamos fazer
// printf("%s", a == b ? "Iguais" : "Diferentes");

getch();
}

Outro Exemplo

int a,b,maior;
printf("Entre com dois numeros: \n");
scanf("%d %d",&a,&b);

maior = a > b ? a : b;
printf("\n Maior = %d",maior);

 maior recebe o valor de a ou de b

Exercícios:
Construa um programa capaz de informar se um número inteiro é par ou impar:
Solução:
#include <stdio.h>
#include <conio.h>

void main()
{
int numero;
printf("Entre com um numero: ");
scanf("%d",&numero);

if((numero % 2) == 0)
printf("Numero par");
else printf("Numero impar");

//   (numero % 2) == 0 ? printf("Par") : printf("Impar");
getch();
}

Complemente o programa feito para calcular a média de um aluno do curso de programação de computadores, adicionando uma saída para o usuário da situação do aluno (aprovado, reprovado ou final).

Solução:
              .
         .
         .
if(media >= 7)
   printf("Aprovado");
else if (media >= 4)
   printf("Final");
else printf("Reprovado");
         .
         .
         .

0 comentários:

Postar um comentário

 
Design by Wordpress Theme | Bloggerized by Free Blogger Templates | JCPenney Coupons