Operadores relacionais e lógicos
Comparações e &&, ||.
Operadores relacionais e lógicos é uma aula grátis de C Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de C Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de C Academy inclui 4 aulas no total.
Comparando valores
Os operadores relacionais comparam dois valores e produzem um valor lógico: 1 para verdadeiro e 0 para falso.
<menor que>maior que<=menor ou igual>=maior ou igual
#include <stdio.h>
int main(void) {
printf("3 < 5 = %d\n", 3 < 5);
printf("3 > 5 = %d\n", 3 > 5);
return 0;
}Igualdade e desigualdade
Use == para testar a igualdade e != para testar a desigualdade. Não confunda == com o operador de atribuição =.
#include <stdio.h>
int main(void) {
int a = 4, b = 4;
printf("a == b = %d\n", a == b);
printf("a != b = %d\n", a != b);
return 0;
}Valores booleanos são inteiros
Por padrão, C não tem um tipo booleano separado. Uma comparação produz os valores int 1 ou 0. Qualquer valor diferente de zero conta como verdadeiro em uma condição.
#include <stdio.h>
int main(void) {
int result = (10 > 2);
printf("result = %d\n", result);
return 0;
}AND lógico
O operador && é verdadeiro somente quando ambos os operandos são verdadeiros.
#include <stdio.h>
int main(void) {
int age = 25;
if (age > 18 && age < 65)
printf("Working age\n");
return 0;
}OR lógico
O operador || é verdadeiro quando pelo menos um dos operandos é verdadeiro.
#include <stdio.h>
int main(void) {
int day = 6;
if (day == 6 || day == 7)
printf("Weekend\n");
return 0;
}NOT lógico
O operador ! inverte um valor lógico. !0 resulta em 1 e !5 resulta em 0.
#include <stdio.h>
int main(void) {
int loggedIn = 0;
if (!loggedIn)
printf("Please log in\n");
return 0;
}Avaliação em curto-circuito
C usa avaliação em curto-circuito: com &&, o lado direito é ignorado se o lado esquerdo for falso; com ||, ele é ignorado se o lado esquerdo for verdadeiro.
#include <stdio.h>
int main(void) {
int x = 0;
if (x != 0 && 10 / x > 1)
printf("safe\n");
else
printf("division skipped\n");
return 0;
}Combinando condições
Você pode combinar operadores relacionais e lógicos para expressar condições mais elaboradas.
#include <stdio.h>
int main(void) {
int score = 75;
if (score >= 50 && score < 80)
printf("Pass\n");
return 0;
}Negando comparações
! pode envolver uma comparação inteira. !(a == b) equivale a a != b.
#include <stdio.h>
int main(void) {
int a = 3, b = 5;
printf("%d\n", !(a == b));
return 0;
}Encadear não é matemática
Ao contrário da matemática, 1 < x < 10 não significa o que você espera. A expressão é avaliada da esquerda para a direita como comparações. Em vez disso, use x > 1 && x < 10.
#include <stdio.h>
int main(void) {
int x = 50;
if (x > 1 && x < 10)
printf("in range\n");
else
printf("out of range\n");
return 0;
}Um exemplo de decisão
Combine tudo para classificar um número.
#include <stdio.h>
int main(void) {
int n = -4;
if (n > 0)
printf("positive\n");
else if (n < 0)
printf("negative\n");
else
printf("zero\n");
return 0;
}Verificação rápida
Teste sua compreensão dos operadores relacionais e lógicos.
Recapitulação: relacionais e lógicos
Você aprendeu a comparar e combinar condições.
- Os operadores relacionais produzem
1ou0 == !=testam a igualdade; nunca confunda==com=&& || !combinam valores lógicos- A avaliação em curto-circuito pode ignorar o segundo operando
- Encadeie condições com
&&explícito
Aprenda C com um tutor de IA — grátis
Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.
- Cursos
- 39
- Aulas
- 144
Perguntas Frequentes
A aula “Operadores relacionais e lógicos” é grátis?
Sim — o texto completo de “Operadores relacionais e lógicos” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de C Academy, atualize para CoddyKit PRO. O curso de C Academy inclui 4 aulas no total.
O que vou aprender em “Operadores relacionais e lógicos”?
Comparações e &&, ||. Você pratica C Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar C Academy?
Nenhuma experiência prévia é necessária. C Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “Operadores relacionais e lógicos”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de C Academy?
Sim. Cada aula de C Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Operadores aritméticos
- Operadores relacionais e lógicos
- Atribuição e incremento
- Precedência de operadores