condição
Uma pergunta que só pode dar verdadeiro ou falso.
Condição é o que vai dentro dos parênteses do , do ou do .
Em C não existe tipo booleano no básico: zero é falso e qualquer outro número é verdadeiro. Por isso if (3) é sempre verdadeiro.
Isso também explica por que if (x = 5) sempre entra: a guarda 5 em x e devolve 5, que é verdadeiro.