Comparações sem usar IF - ELSE em C

Publicado por Fernando Krein Pinheiro (última atualização em 10/06/2011)

[ Hits: 6.008 ]

Homepage: www.ferpinheiro.wordpress.com

Download ?.c




Nessa dica vou usar o operado " ? ". Esse tipo de operador é chamado de operador ternario pois o mesmo requer tres operando. Este pode ser usado para substituir os if-else na linguagem C.
Sua forma de funcionamento é: Exp1 ? Exp2 : Exp3 onde Exp1 é expressão1 Exp2 é expressão2 e assim por diante...
O valor de uma Expressão ? é determinada como segue: Exp1 é avaliada. Se for verdadeira, Exp2 sera avaliada e se tornara expressão ? inteira. Se Exp1 é falsa, entao Exp3 é verdadeira e se torna valor da expressão ? .

  



Esconder código-fonte

/* Autor: Fernando Krein Pinheiro
 Data: 09/03/2011
*/

#include <stdio.h>

int maior (int a, int b, int c) {
 int nmaior = a;
 
 nmaior = b>maior ? nmaior : b ;
 nmaior = c>nmaior? c : nmaior ;
 
}

int menor(int a, int b, int c) 
{
 int nmenor = a;
 nmenor = b < nmenor ? b : nmenor;
 nmenor = c < nmenor ? c : nmenor;
 return nmenor;
}

int main(){
        int a,b,c;
        printf("Digite 3 valores inteiros");
        scanf("%d %d %d",&a,&b,&c);

        printf("O maior numero é: %d\n",maior(a,b,c));
        printf("O menor numero é: %d\n",menor(a,b,c));
        return 0;
}

Scripts recomendados

Fatorial

Par ou Ímpar

Função fork

Fibonacci Recursivo e Não Recursivo

Controlando o teclado enquanto mensagens são exibidas no console


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts