C if... else Declaração
C if...else Declaração
Neste tutorial, você aprenderá sobre a instrução if (incluindo if...else e if..else aninhado) em programação C com a ajuda de exemplos.
Vídeo:Declaração C if else
C if Declaração
A sintaxe do
if
instrução em programação C é:
if (test expression)
{
// code
}
Como se a instrução funciona?
O
if
A instrução avalia a expressão de teste dentro dos parênteses ()
. - Se a expressão de teste for avaliada como verdadeira, as instruções dentro do corpo de
if
são executados. - Se a expressão de teste for avaliada como falsa, as instruções dentro do corpo de
if
não são executados.
Para saber mais sobre quando a expressão de teste é avaliada como verdadeira (valor diferente de zero) e falsa (0), verifique os operadores relacionais e lógicos.
Exemplo 1:instrução if
// Program to display a number if it is negative
#include <stdio.h>
int main() {
int number;
printf("Enter an integer: ");
scanf("%d", &number);
// true if number is less than 0
if (number < 0) {
printf("You entered %d.\n", number);
}
printf("The if statement is easy.");
return 0;
}
Saída 1
Enter an integer: -2 You entered -2. The if statement is easy.
Quando o usuário insere -2, a expressão de teste
number<0
é avaliado como verdadeiro. Portanto,
Você digitou -2
é exibido na tela. Saída 2
Enter an integer: 5 The if statement is easy.
Quando o usuário insere 5, a expressão de teste
number<0
é avaliado como false e a instrução dentro do corpo de if
não é executado C if...else Declaração
O
if
declaração pode ter um opcional else
quadra. A sintaxe do if..else
afirmação é:
if (test expression) {
// run code if test expression is true
}
else {
// run code if test expression is false
}
Como a instrução if...else funciona?
Se a expressão de teste for avaliada como verdadeira,
- instruções dentro do corpo de
if
são executados. - instruções dentro do corpo de
else
são ignorados da execução.
Se a expressão de teste for avaliada como falsa,
- instruções dentro do corpo de
else
são executados - instruções dentro do corpo de
if
são ignorados da execução.
Exemplo 2:instrução if...else
// Check whether an integer is odd or even
#include <stdio.h>
int main() {
int number;
printf("Enter an integer: ");
scanf("%d", &number);
// True if the remainder is 0
if (number%2 == 0) {
printf("%d is an even integer.",number);
}
else {
printf("%d is an odd integer.",number);
}
return 0;
}
Saída
Enter an integer: 7 7 is an odd integer.
Quando o usuário insere 7, a expressão de teste
number%2==0
é avaliado como falso. Portanto, a instrução dentro do corpo de else
É executado. C if...else Ladder
O
if...else
A instrução executa dois códigos diferentes dependendo se a expressão de teste é verdadeira ou falsa. Às vezes, uma escolha deve ser feita a partir de mais de 2 possibilidades. A escada if...else permite verificar entre várias expressões de teste e executar diferentes instruções.
Sintaxe de if...else Ladder
if (test expression1) {
// statement(s)
}
else if(test expression2) {
// statement(s)
}
else if (test expression3) {
// statement(s)
}
.
.
else {
// statement(s)
}
Exemplo 3:C if...else Ladder
// Program to relate two integers using =, > or < symbol
#include <stdio.h>
int main() {
int number1, number2;
printf("Enter two integers: ");
scanf("%d %d", &number1, &number2);
//checks if the two integers are equal.
if(number1 == number2) {
printf("Result: %d = %d",number1,number2);
}
//checks if number1 is greater than number2.
else if (number1 > number2) {
printf("Result: %d > %d", number1, number2);
}
//checks if both test expressions are false
else {
printf("Result: %d < %d",number1, number2);
}
return 0;
}
Saída
Enter two integers: 12 23 Result: 12 < 23
Aninhado if...else
É possível incluir um
if...else
declaração dentro do corpo de outro if...else
declaração. Exemplo 4:aninhado if...else
Este programa abaixo relaciona dois inteiros usando
<
, >
e =
semelhante ao if...else
exemplo da escada. No entanto, usaremos um if...else
aninhado declaração para resolver este problema.
#include <stdio.h>
int main() {
int number1, number2;
printf("Enter two integers: ");
scanf("%d %d", &number1, &number2);
if (number1 >= number2) {
if (number1 == number2) {
printf("Result: %d = %d",number1,number2);
}
else {
printf("Result: %d > %d", number1, number2);
}
}
else {
printf("Result: %d < %d",number1, number2);
}
return 0;
}
Se o corpo de um
if...else
declaração tem apenas uma declaração, você não precisa usar colchetes {}
. Por exemplo, este código
if (a > b) {
printf("Hello");
}
printf("Hi");
é equivalente a
if (a > b)
printf("Hello");
printf("Hi");
Linguagem C