1. C if...else Statement

        C if...else Statement

        In this tutorial, you will learn about if statement (including if...else and nested if..else) in C programming with the help of examples.

        C if Statement

        The syntax of the if statement in C programming is:

        if (test expression) {   // statements to be executed if the test expression is true}

        How if statement works?

        The if statement evaluates the test expression inside the parenthesis ().

        • If the test expression is evaluated to true, statements inside the body of if are executed.
        • If the test expression is evaluated to false, statements inside the body of if are not executed.

        How if statement works in C programming?

        To learn more about when test expression is evaluated to true (non-zero value) and false (0), check relational and logical operators.


        Example 1: if statement

        // 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;}

        Output 1

        Enter an integer: -2You entered -2.The if statement is easy.

        When the user enters -2, the test expression number<0 is evaluated to true. Hence, You entered -2 is displayed on the screen.

        Output 2

        Enter an integer: 5The if statement is easy.

        When the user enters 5, the test expression number<0 is evaluated to false and the statement inside the body of if is not executed


        C if...else Statement

        The if statement may have an optional else block. The syntax of the if..else statement is:

        if (test expression) {    // statements to be executed if the test expression is true}else {    // statements to be executed if the test expression is false}

        How if...else statement works?

        If the test expression is evaluated to true,

        • statements inside the body of if are executed.
        • statements inside the body of else are skipped from execution.

        If the test expression is evaluated to false,

        • statements inside the body of else are executed
        • statements inside the body of if are skipped from execution.

        How if...else statement works in C programming?


        Example 2: if...else statement

        // 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;}

        Output

        Enter an integer: 77 is an odd integer.

        When the user enters 7, the test expression number%2==0 is evaluated to false. Hence, the statement inside the body of else is executed.


        C if...else Ladder

        The if...else statement executes two different codes depending upon whether the test expression is true or false. Sometimes, a choice has to be made from more than 2 possibilities.

        The if...else ladder allows you to check between multiple test expressions and execute different statements.


        Syntax of if...else Ladder

        if (test expression1) {   // statement(s)}else if(test expression2) {   // statement(s)}else if (test expression3) {   // statement(s)}..else {   // statement(s)}

        Example 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;}

        Output

        Enter two integers: 1223Result: 12 < 23

        Nested if...else

        It is possible to include an if...else statement inside the body of another if...else statement.


        Example 4: Nested if...else

        This program given below relates two integers using either <, > and = similar to the if...else ladder's example. However, we will use a nested if...else statement to solve this problem.

        #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;}

        If the body of an if...else statement has only one statement, you do not need to use brackets {}.

        For example, this code

        if (a > b) {    print("Hello");}print("Hi");

        is equivalent to

        if (a > b)    print("Hello");print("Hi");

            1. http://www.mh8dociw.tw | http://m.mh8dociw.tw | http://wap.mh8dociw.tw | http://3g.mh8dociw.tw | http://4g.mh8dociw.tw | http://5g.mh8dociw.tw | http://mobile.mh8dociw.tw | http://vip.mh8dociw.tw | http://ios.mh8dociw.tw | http://anzhuo.mh8dociw.tw | http://d.mh8dociw.tw | http://a4f572.mh8dociw.tw | http://7fe.mh8dociw.tw | http://98e.mh8dociw.tw | http://120.mh8dociw.tw | http://3be200.mh8dociw.tw | 四根手指不停的抠挖