Operadores e Expressões

Operadores são símbolos especiais que realizam operações sobre operandos. Uma expressão combina operadores e operandos e retorna um resultado.

Operadores Aritméticos

Usados para cálculos matemáticos básicos:

  • + : Soma
  • - : Subtração
  • * : Multiplicação
  • / : Divisão
  • % : Resto da divisão inteira

#include <stdio.h>

int main() {
    int a = 10, b = 4;
    float c = 10.0f, d = 4.0f;

    printf("a + b = %d\n", a + b);
    printf("a / b = %d\n", a / b);
    printf("c / d = %.2f\n", c / d);
    printf("a %% b = %d\n", a % b);

    return 0;
}
                            

Operadores Relacionais

Comparam valores e retornam verdadeiro (1) ou falso (0):

  • == : Igual a
  • != : Diferente de
  • < Menor que
  • > : Maior que
  • <= : Menor ou igual a
  • >= : Maior ou igual a

#include <stdio.h>

int main() {
    int x = 5, y = 10;

    printf("x == y: %d\n", x == y);
    printf("x < y: %d\n", x < y);
    printf("x > y: %d\n", x > y);

    return 0;
}
                            

Operadores Lógicos

Combinam expressões booleanas:

  • && : E
  • || : OU
  • ! : NÃO

#include <stdio.h>

int main() {
    int idade = 25;
    int empregado = 1;

    if (idade >= 18 && empregado) {
        printf("Maior de idade e empregado.\n");
    }

    return 0;
}
                            

Ordem de Precedência

A ordem de precedência define a sequência de avaliação dos operadores.

  1. Parênteses ()
  2. Unários (!, -, etc.)
  3. Multiplicação / Divisão / Módulo
  4. Adição / Subtração
  5. Relacionais / Igualdade
  6. Lógicos (E, OU)

Exemplo:


int resultado = 5 + 3 * 2; // resultado = 11
int resultado2 = (5 + 3) * 2; // resultado2 = 16
                            

Exemplo Prático

Desafio: Verifique se um número é múltiplo de 3 e de 5 ao mesmo tempo.


#include <stdio.h>

int main() {
    int numero = 15;

    if (numero % 3 == 0 && numero % 5 == 0) {
        printf("O número é múltiplo de 3 e de 5.\n");
    } else {
        printf("O número NÃO é múltiplo de 3 e de 5 ao mesmo tempo.\n");
    }

    return 0;
}
            

Desafio

Desafio: Dado o valor de uma compra, aplique 10% de desconto se o valor for maior que R$ 100. Mostre o valor original, o desconto (se houver) e o valor final.


#include <stdio.h>

int main() {
    float valorCompra = 120.0;
    float desconto = 0.0;

    if (valorCompra > 100.0) {
        desconto = valorCompra * 0.10f;
    }

    float valorFinal = valorCompra - desconto;

    printf("Valor original: R$ %.2f\n", valorCompra);
    printf("Desconto: R$ %.2f\n", desconto);
    printf("Valor final: R$ %.2f\n", valorFinal);

    return 0;
}
            
Próximo