if-Anweisung in der C-Programmierung

if-Anweisung in der C-Programmierung

Die Entscheidungsfindung ist ein wichtiger Teil der Programmierung. Jede Programmiersprache unterstützt Entscheidungsfindungsanweisungen, die es Programmierern ermöglichen, je nach Bedingung zu verzweigen. In der Programmiersprache C if-Anweisung wird verwendet, um den Zustand zu prüfen und eine Entscheidung zu treffen. Die Entscheidungen oder Aussagen werden in geschweifte Klammern eingeschlossen , wenn jedoch nur eine einzelne Anweisung ausgeführt werden soll, sind geschweifte Klammern nicht zwingend erforderlich. Abhängig von der Anzahl der zu prüfenden Bedingungen haben wir folgende Arten von if-Anweisungen:

  1. if-Anweisung
  2. if … else-Anweisung
  3. if … else if … else-Anweisung
  4. Verschachtelt wenn

if-Anweisung

if-Anweisung wird zum Verzweigen verwendet, wenn eine einzelne Bedingung überprüft werden soll. Die in der if-Anweisung eingeschlossene Bedingung bestimmt die Reihenfolge der Ausführung der Anweisung. Wenn die Bedingung wahr ist, werden die Anweisungen innerhalb der if-Anweisung ausgeführt, andernfalls werden sie übersprungen. In der Programmiersprache C wird jeder Wert ungleich Null als wahr und Null oder Null als falsch angesehen.

Syntax der if-Anweisung

if (condition)
{
    statements;
    ... ... ...
}

Flussdiagramm der if-Anweisung

Beispiel einer if-Anweisung

Beispiel 1 :C-Programm zum Drucken des Quadrats einer Zahl, wenn diese kleiner als 10 ist.

#include<stdio.h>
int main()
{
    int n;
    printf("Enter a number:");
    scanf("%d",&n);
    if(n<10)
    {
        printf("%d is less than 10n",n);
        printf("Square = %dn",n*n);
    }
    return 0;
}

Dieses Programm ist ein Beispiel für die Verwendung der if-Anweisung. Eine Zahl wird vom Benutzer abgefragt und in der Variablen n gespeichert . Wenn der Wert von n kleiner als 10 ist, dann wird sein Quadrat auf dem Bildschirm gedruckt. Wenn die Bedingung falsch ist, wird die Ausführung des Programms beendet.

Ausgabe

Enter a number:6
6 is less than 10
Square = 36

if … else-Anweisung

if … else-Anweisung ist eine Zwei-Wege-Verzweigungsanweisung. Es besteht aus zwei Anweisungsblöcken, die jeweils in einem if-Block bzw. einem else-Block eingeschlossen sind. Wenn die Bedingung innerhalb der if-Anweisung wahr ist, werden Anweisungen innerhalb des if-Blocks ausgeführt, andernfalls werden Anweisungen innerhalb des else-Blocks ausgeführt. Der Else-Block ist optional und kann in einem Programm fehlen.

Syntax der if…else-Anweisung

if (condition)
{
    statements;
    ... ... ...
}
else
{
    statements;
    ... ... ...
}

Flussdiagramm der if … else-Anweisung

Beispiel einer if … else-Anweisung

Beispiel 2:C-Programm, um herauszufinden, ob eine Zahl ungerade oder gerade ist.

#include<stdio.h>
int main()
{
    int n;
    printf("Enter a number:");
    scanf("%d",&n);
    if(n%2 == 0)
        printf("%d is even",n);
    else
        printf("%d is odd",n);
    return 0;
}

Hier wird vom Benutzer eine Nummer eingegeben, die in n gespeichert wird. Die if-Anweisung prüft, ob der Rest dieser Zahl bei Division durch 2 Null ist oder nicht. Wenn der Rest Null ist, ist die Zahl gerade, die auf dem Bildschirm gedruckt wird. Wenn der Rest 1 ist, ist die Zahl ungerade.

Hinweis :Wenn es nur eine Anweisung innerhalb des if-Blocks gibt, müssen wir sie nicht in geschweiften Klammern { } einschließen.

Ausgabe

Enter a number:18
18 is even
Enter a number:33
33 is odd

if … else if … else-Anweisung

Es wird verwendet, wenn mehr als eine Bedingung überprüft werden soll. Ein Anweisungsblock wird in den if-, else if- und else-Teil eingeschlossen. Bedingungen werden in jedem if- und else if-Teil überprüft. Wenn die Bedingung wahr ist, werden die Anweisungen in diesem Block ausgeführt. Wenn keine der Bedingungen wahr ist, werden die Anweisungen innerhalb des else-Blocks ausgeführt. Eine if … else if … else-Anweisung darf nur einen if-Block haben, kann aber beliebig viele else if-Blöcke haben. Else-Teil ist optional und kann vorhanden sein oder fehlen.

Syntax der if…else if…else-Anweisung

if (condition 1)
{
    statements;
    ... ... ...
}
else if (condition 2)
{
    statements;
    ... ... ...
}
... ... ...
... ... ...
else if (condition n)
{
    statements;
    ... ... ...
}
else
{
    statements;
    ... ... ...
}

Flussdiagramm der if … else if … else-Anweisung

Beispiel für if … else if … else-Anweisung

Beispiel 3 :C-Programm, um herauszufinden, ob eine Zahl negativ, positiv oder null ist.

#include<stdio.h>
int main()
{
    int n;
    printf("Enter a number:");
    scanf("%d",&n);
    if(n<0)
        printf("Number is negative");
    else if(n>0)
        printf("Number is positive");
    else
        printf("Number is equal to zero");
    return 0;
}

In diesem Programm wird eine Zahl vom Benutzer eingegeben, die in der Variablen n gespeichert ist . Die if … else if … else-Anweisung testet zwei Bedingungen:

  1. n<0 :Wenn es wahr ist, wird „Zahl ist negativ“ auf dem Bildschirm gedruckt.
  2. n>0 :Wenn es wahr ist, wird „Zahl ist positiv“ auf dem Bildschirm gedruckt.

Wenn beide dieser Bedingungen falsch sind, dann ist die Zahl Null. Das Programm gibt also „Zahl ist Null“ aus.

Ausgabe

Enter a number:109
Number is positive
Enter a number:-56
Number is negative
Enter a number:0
Number is equal to zero

Verschachtelte if-Anweisungen

Wenn eine if-Anweisung in einer anderen if-Anweisung enthalten ist, wird sie als verschachtelte if-Anweisung bezeichnet. Verschachtelte if-Anweisungen werden verwendet, wenn eine Unterbedingung getestet werden soll. Die Tiefe der verschachtelten if-Anweisungen hängt von der Anzahl der zu prüfenden Bedingungen ab.

Syntax der verschachtelten if-Anweisung

if (condition 1)
{
    statements;
    if (sub condition 1)
    {
        statements;
    }
    statements;
}
else if (condition 2)
{
    statements;
    if (sub condition 2)
    {
        statements;
    }
    statements;
}
... ... ...
... ... ...
else
{
    statements;
    if (sub condition n)
    {
        statements;
    }
    statements;
}

Flussdiagramm der verschachtelten if-Anweisung

Beispiel für eine verschachtelte if-Anweisung

Beispiel 4 :C-Programm zum Prüfen, ob eine Zahl kleiner als 100 ist oder nicht. Wenn es weniger als 100 ist, prüfen Sie, ob es ungerade oder gerade ist.

#include<stdio.h>
int main()
{
    int n;
    printf("Enter a number:");
    scanf("%d",&n);
    if(n<100)
    {
        printf("%d is less than 100n",n);
        if(n%2 == 0)
            printf("%d is even",n);
        else
            printf("%d is odd",n);
    }
    else
        printf("%d is equal to or greater than 100",n);
    return 0;
}

Dieses Programm testet zwei Bedingungen:

  1. Ob die Zahl kleiner als 100 ist oder nicht.
  2. Wenn die Zahl kleiner als 100 ist, ist sie ungerade oder gerade.

Es besteht aus einer verschachtelten if-Anweisung. Die äußere if-Anweisung prüft, ob die Zahl kleiner als 100 ist oder nicht. Wenn die Zahl kleiner als Hundert ist, wird eine andere Bedingung geprüft, d. h. ob die Zahl gerade oder ungerade ist, und eine entsprechende Meldung wird angezeigt.

Ausgabe

Enter a number:46
46 is less than 100
46 is even
Enter a number:67
67 is less than 100
67 is odd
Enter a number:316
316 is equal to or greater than 100