Existem situações na vida real em que precisamos tomar algumas decisões e, com base nessas decisões, decidimos o que devemos fazer a seguir. Situações semelhantes surgem na programação também onde precisamos tomar algumas decisões e com base nessas decisões executaremos o próximo bloco de código. Por exemplo, em C, se x ocorrer, execute y, caso contrário, execute z. Também pode haver várias condições, como em C, se x ocorrer, execute p, do contrário, se a condição y ocorrer, execute q, caso contrário, execute r. Essa condição de C else-if é uma das muitas maneiras de importar várias condições. 
 

As instruções de tomada de decisão em linguagens de programação decidem a direção do fluxo de execução do programa. As declarações de tomada de decisão disponíveis em C ou C++ são: 
 

  1. declaração if
  2. declarações if..else
  3. declarações if aninhadas
  4. escada if-else-if
  5. trocar declarações
  6. Declarações de salto: 
    1. pausa
    2. Prosseguir
    3. vamos para
    4. Retorna

declaração if em C / C++

A declaração if é a declaração de tomada de decisão mais simples. É usado para decidir se uma determinada instrução ou bloco de instruções será executado ou não, ou seja, se uma determinada condição for verdadeira, um bloco de instruções será executado, caso contrário, não. 
Sintaxe
 

if(condition) 
{
   // Statements to execute if
   // condition is true
}

Aqui, a condição após a avaliação será verdadeira ou falsa. A instrução C if aceita valores booleanos - se o valor for verdadeiro, ele executará o bloco de instruções abaixo dele, caso contrário, não. Se não fornecermos as chaves '{' e '}' após if (condição), então, por padrão, a instrução if irá considerar a primeira instrução imediatamente abaixo como estando dentro de seu bloco. 
Exemplo
 

if(condition)
   statement1;
   statement2;

// Here if the condition is true, if block 
// will consider only statement1 to be inside 
// its block.

Fluxograma 
 

if-statement-in-java

// C program to illustrate If statement
#include <stdio.h>
 
int main() {
    int i = 10;
 
    if (i > 15)
    {
       printf("10 is less than 15");
    }   
    
    printf("I am Not in if");
}
// C++ program to illustrate If statement
#include<iostream>
using namespace std;
 
    int main()
    {
        int i = 10;
  
        if (i > 15)
        {
           cout<<"10 is less than 15";
        }   
        
        cout<<"I am Not in if";
    }
Saída: 
Eu não estou em se

 

Como a condição presente na declaração if é falsa. Portanto, o bloco abaixo da instrução if não é executado.
 

if-else em C / C++

A instrução if por si só nos diz que se uma condição for verdadeira, ela executará um bloco de instruções e, se a condição for falsa, não o fará. Mas e se quisermos fazer outra coisa se a condição for falsa. Aí vem a instrução C else . Podemos usar a instrução else com a instrução if para executar um bloco de código quando a condição for falsa. 
Sintaxe
 

if (condition)
{
    // Executes this block if
    // condition is true
}
else
{
    // Executes this block if
    // condition is false
}

Fluxograma
 

if-else-statement

Exemplo:
 

// C program to illustrate If statement
#include <stdio.h>
 
int main() {
    int i = 20;
 
    if (i < 15){
       
        printf("i is smaller than 15");
    }
    else{
       
        printf("i is greater than 15");
    }       
    return 0;   
}
// C++ program to illustrate if-else statement
#include<iostream>
using namespace std;
 
int main()
 {
        int i = 20;
  
        if (i < 15)
            cout<<"i is smaller than 15";
        else
            cout<<"i is greater than 15";
             
    return 0;   
 }
Saída: 
eu é maior que 15

 

O bloco de código após a instrução else é executado porque a condição presente na instrução if é falsa.
 

aninhado-se em C / C++

Um if aninhado em C é uma instrução if que é o alvo de outra instrução if. As instruções if aninhadas significam uma instrução if dentro de outra instrução if. Sim, tanto C quanto C++ nos permitem aninhar instruções if dentro de instruções if, ou seja, podemos colocar uma instrução if dentro de outra instrução if. 
Sintaxe: 
 

if (condition1) 
{
   // Executes when condition1 is true
   if (condition2) 
   {
      // Executes when condition2 is true
   }
}

Fluxograma 
 

aninhado-se

Exemplo: 
 

// C program to illustrate nested-if statement
#include <stdio.h>
 
int main() {
    int i = 10;
 
    if (i == 10)
    {
        // First if statement
        if (i < 15)
           printf("i is smaller than 15\n");
 
        // Nested - if statement
        // Will only be executed if statement above
        // is true
        if (i < 12)
            printf("i is smaller than 12 too\n");
        else
            printf("i is greater than 15");
    }
 
    return 0;
}
// C++ program to illustrate nested-if statement
#include <iostream>
using namespace std;
 
int main()
{
    int i = 10;
 
    if (i == 10)
    {
        // First if statement
        if (i < 15)
           cout<<"i is smaller than 15\n";
 
        // Nested - if statement
        // Will only be executed if statement above
        // is true
        if (i < 12)
            cout<<"i is smaller than 12 too\n";
        else
            cout<<"i is greater than 15";
    }
 
    return 0;
}
Saída: 
eu é menor que 15
eu é menor que 12 também

 

escada if-else-if em C / C++

Aqui, um usuário pode decidir entre várias opções. As instruções C if são executadas de cima para baixo. Assim que uma das condições que controlam o if for verdadeira, a instrução associada a esse if é executada e o resto da escada C else-if é ignorada. Se nenhuma das condições for verdadeira, a instrução else final será executada. 
Sintaxe: 
 

if (condition)
    statement;
else if (condition)
    statement;
.
.
else
    statement;

if-else-if-ladder

Exemplo: 
 

// C program to illustrate nested-if statement
#include <stdio.h>
 
int main() {
    int i = 20;
  
    if (i == 10)
        printf("i is 10");
    else if (i == 15)
        printf("i is 15");
    else if (i == 20)
        printf("i is 20");
    else
        printf("i is not present");
}
// C++ program to illustrate if-else-if ladder
#include<iostream>
using namespace std;
 
int main()
{
    int i = 20;
  
    if (i == 10)
        cout<<"i is 10";
    else if (i == 15)
        cout<<"i is 15";
    else if (i == 20)
        cout<<"i is 20";
    else
        cout<<"i is not present";
}
Saída: 
eu tenho 20

 

Instruções de salto em C / C++

Essas instruções são usadas em C ou C++ para o fluxo incondicional de controle em todas as funções de um programa. Eles suportam quatro tipos de declarações de salto:
 

  1. C break: Esta instrução de controle de loop é usada para encerrar o loop. Assim que a instrução break é encontrada em um loop, as iterações do loop param e o controle retorna do loop imediatamente para a primeira instrução após o loop. 
    Sintaxe: 
     
break;
  1. Basicamente, as instruções break são usadas em situações em que não temos certeza sobre o número real de iterações do loop ou queremos encerrar o loop com base em alguma condição. 
     

  1. Exemplo: 
     
// C program to illustrate
// Linear Search
 
#include <stdio.h>
 
void findElement(int arr[], int size, int key)
{
    // loop to traverse array and search for key
    for (int i = 0; i < size; i++) {
        if (arr[i] == key) {
            printf("Element found at position: %d", (i + 1));
            break;
        }
    }
}
 
int main() {
    int arr[] = { 1, 2, 3, 4, 5, 6 };
     
    // no of elements
    int n = 6; 
     
    // key to be searched
    int key = 3;
 
    // Calling function to find the key
    findElement(arr, n, key);
 
    return 0;
}
// CPP program to illustrate
// Linear Search
#include <iostream>
using namespace std;
 
void findElement(int arr[], int size, int key)
{
    // loop to traverse array and search for key
    for (int i = 0; i < size; i++) {
        if (arr[i] == key) {
            cout << "Element found at position: " << (i + 1);
            break;
        }
    }
}
 
// Driver program to test above function
int main()
{
    int arr[] = { 1, 2, 3, 4, 5, 6 };
    int n = 6; // no of elements
    int key = 3; // key to be searched
 
    // Calling function to find the key
    findElement(arr, n, key);
 
    return 0;
}
  1.  
Saída: 
Elemento encontrado na posição: 3

 

  1.  
  2. C continua : Esta instrução de controle de loop é igual à instrução break . Ainstrução continue é oposta à instrução break; em vez de encerrar o loop, ela força a execução da próxima iteração do loop. 
    Como o nome sugere, a instrução continue força o loop a continuar ou executar a próxima iteração. Quando a instrução continue é executada no loop, o código dentro do loop após a instrução continue será ignorado e a próxima iteração do loop começará. 
    Sintaxe: 
     
continue;
  1.  

  1. Exemplo: 
     
// C program to explain the use
// of continue statement
#include <stdio.h>
 
int main() {
    // loop from 1 to 10
    for (int i = 1; i <= 10; i++) {
 
        // If i is equals to 6,
        // continue to next iteration
        // without printing
        if (i == 6)
            continue;
 
        else
            // otherwise print the value of i
            printf("%d ", i);
    }
 
    return 0;
}
// C++ program to explain the use
// of continue statement
 
#include <iostream>
using namespace std;
 
int main()
{
    // loop from 1 to 10
    for (int i = 1; i <= 10; i++) {
 
        // If i is equals to 6,
        // continue to next iteration
        // without printing
        if (i == 6)
            continue;
 
        else
            // otherwise print the value of i
            cout << i << " ";
    }
 
    return 0;
}
  1.  
Saída: 
1 2 3 4 5 7 8 9 10

 

  1.  

Se você criar uma variável em if-else em C / C++, ela será local apenas para aquele bloco if / else. Você pode usar variáveis ​​globais dentro do bloco if / else. Se o nome da variável que você criou em if / else for igual a qualquer variável global, então a prioridade será dada à `variável local`. 

#include<iostream>
using namespace std;
 
int main(){
    int gfg=0; // local variable for main
    cout<<"Before if-else block "<<gfg<<endl;
    if(1){
        int gfg = 100; // new local variable of if block
        cout<<"if block "<<gfg<<endl;
    }
    cout<<"After if block "<<gfg<<endl;
    return 0;
}
/*
    Before if-else block 0
    if block 100
    After if block 0
*/
#include <stdio.h>
 
int main() {
 
      int gfg=0; // local variable for main
    printf("Before if-else block %d\n",gfg);
    if(1){
        int gfg = 100; // new local variable of if block
        printf("if block %d\n",gfg);
    }
    printf("After if block %d",gfg);
  return 0;
}
  1. C goto: A instrução goto em C / C++ também conhecida como instrução de salto incondicional pode ser usada para pular de um ponto a outro dentro de uma função. 
    Sintaxe
     
Syntax1      |   Syntax2
----------------------------
goto label;  |    label:  
.            |    .
.            |    .
.            |    .
label:       |    goto label;
  1. Na sintaxe acima, a primeira linha diz ao compilador para ir ou pular para a instrução marcada como um rótulo. Aqui, rótulo é um identificador definido pelo usuário que indica a instrução de destino. A instrução imediatamente seguida depois de 'rótulo:' é a instrução de destino. O 'rótulo:' também pode aparecer antes do 'rótulo goto;' declaração na sintaxe acima. 
     

vamos para

  1. Abaixo estão alguns exemplos de como usar a instrução goto:
    Exemplos: 
     
// C program to print numbers
// from 1 to 10 using goto statement
#include <stdio.h>
 
// function to print numbers from 1 to 10
void printNumbers()
{
    int n = 1;
label:
    printf("%d ",n);
    n++;
    if (n <= 10)
        goto label;
}
 
// Driver program to test above function
int main() {
    printNumbers();
    return 0;
}
// C++ program to print numbers
// from 1 to 10 using goto statement
#include <iostream>
using namespace std;
 
// function to print numbers from 1 to 10
void printNumbers()
{
    int n = 1;
label:
    cout << n << " ";
    n++;
    if (n <= 10)
        goto label;
}
 
// Driver program to test above function
int main()
{
    printNumbers();
    return 0;
}
  1.  
Saída: 
1 2 3 4 5 6 7 8 9 10

 

  1.  
  2. Retorno C: O retorno em C ou C++ retorna o fluxo da execução para a função de onde é chamada. Esta declaração não precisa obrigatoriamente de declarações condicionais. Assim que a instrução é executada, o fluxo do programa para imediatamente e retorna o controle de onde foi chamado. A instrução return pode ou não retornar nada para uma função nula, mas para uma função não nula, um valor de retorno deve ser retornado. 
    Sintaxe: 
     
return[expression];
  1. Exemplo: 
     
// C code to illustrate return
// statement
#include <stdio.h>
 
// non-void return type
// function to calculate sum
int SUM(int a, int b)
{
    int s1 = a + b;
    return s1;
}
 
// returns void
// function to print
void Print(int s2)
{
    printf("The sum is %d", s2);
    return;
}
 
int main()
{
    int num1 = 10;
    int num2 = 10;
    int sum_of = SUM(num1, num2);
    Print(sum_of);
    return 0;
}
// C++ code to illustrate return
// statement
#include <iostream>
using namespace std;
 
// non-void return type
// function to calculate sum
int SUM(int a, int b)
{
    int s1 = a + b;
    return s1;
}
 
// returns void
// function to print
void Print(int s2)
{
    cout << "The sum is "<< s2;
    return;
}
 
int main()
{
    int num1 = 10;
    int num2 = 10;
    int sum_of = SUM(num1, num2);
    Print(sum_of);
    return 0;
}
  1.  
Saída: 
A soma é 20

 

  1.  

? list = PLqM7alHXFySGg6GSRmE2INI4k8fPH5qVB 
 

Este artigo é uma contribuição de Harsh Agarwal . Se você gosta de GeeksforGeeks e gostaria de contribuir, você também pode escrever um artigo usando write.geeksforgeeks.org ou enviar seu artigo para review-team@geeksforgeeks.org. Veja o seu artigo na página principal do GeeksforGeeks e ajude outros Geeks.
Escreva comentários se encontrar algo incorreto ou se quiser compartilhar mais informações sobre o tópico discutido acima.