How Do You Use if Statements in C Programming?


How to Use if Statement in C is essential for beginners aiming to control program flow with conditions. Understanding this topic helps solve problems like making decisions in code, handling data logically, and avoiding errors. Ready to enhance your programming skills? Keep reading to master these fundamental concepts!

Understanding ‘if’ Statements in C

In the world of C programming, the ‘if’ statement is essential for decision-making. Ever faced a fork in the road while driving? That’s what an ‘if’ statement does in your code—it helps decide which path to take based on conditions. The basic syntax is straightforward: `if (condition) { // code executes if condition is true }`. Think of it as a simple question: “Is this statement true?” If so, your car, or rather your code, takes a specific turn. It might seem basic, but mastering this simple tool opens up a world of possibilities as your programming evolves.

The basic syntax of an 'if' statement in C looks like this:

c
if (condition) {
    // code to execute if condition is true
}


This structure enables you to execute code blocks conditionally, only running them when the specified condition evaluates to true.  

Using the ‘if’ Statement

c
#include 
int main() {
    int number;
    printf("Enter an integer: ");
    scanf("%d", &number);
    if (number % 2 == 0) {
        printf("%d is even.
", number);
    } else {
        printf("%d is odd.
", number);
    }
    return 0;
}
  
Explanation of the Code
Let’s dive into the code to understand what it’s doing step by step:
  1. First, the `#include ` line is included, which allows us to use standard input and output functions like `printf()` and `scanf()`. This is essential for getting input from the user and displaying output on the screen.

  2. The `int main()` function is the starting point of the program. It’s where the code execution begins.

  3. We have declared an integer variable named `number`. This will store the integer input that the user provides.

  4. A prompt is displayed using `printf()`, asking the user to enter an integer. The `scanf()` function is then used to capture this input and store it in `number`.

  5. The `if` statement checks if the number is even (divisible by 2 with no remainder). If so, it prints that the number is even; otherwise, the `else` statement ensures it prints the number as odd.

  6. Finally, the `return 0;` statement signals that the program has executed successfully.

Output

Enter an integer: 4 is even.

If-Else Statement in C

Syntax

if (condition) {
    // code runs if condition is true
} else {
    // code runs if condition is false
}

👉 The program chooses one of two paths based on whether the condition evaluates to true or false.


Example

#include <stdio.h>

int main() {
    int number = 10;

    if (number % 2 == 0) {
        printf("The number is even.");
    } else {
        printf("The number is odd.");
    }

    return 0;
}

🧠 How it works:

  • number % 2 == 0 checks if the number is divisible by 2
  • If true → prints “even”
  • If false → prints “odd”

When to Use Instead of Simple If

Use an if-else statement when:

  • You need both true AND false outcomes handled
  • You want to avoid unnecessary checks after a condition fails
  • Your logic requires a default action

👉 Example situation:

  • Login success vs failure
  • Pass vs fail result
  • Valid vs invalid input

If you only care about one condition (no alternative), a simple if is enough. Otherwise, use if-else.

Nested If Statements

Explanation

A nested if statement means placing one if (or if-else) inside another.

👉 This is useful when:

  • You need to check multiple conditions in sequence
  • One condition depends on another being true

Real Example

#include <stdio.h>

int main() {
    int age = 20;
    int hasID = 1;

    if (age >= 18) {
        if (hasID == 1) {
            printf("You are allowed to enter.");
        } else {
            printf("You need an ID to enter.");
        }
    } else {
        printf("You are underage.");
    }

    return 0;
}

🧠 Logic breakdown:

  • First checks age
  • If age is valid → checks ID
  • If both are valid → access granted

Best Practices

Keep nesting minimal

  • Too many nested levels make code hard to read

Use proper indentation

  • Makes structure clear and avoids confusion

Combine conditions when possible

if (age >= 18 && hasID == 1) {
    printf("You are allowed to enter.");
}

Avoid deep nesting

  • Consider using logical operators (&&, ||) instead

Write readable conditions

  • Simpler logic = fewer bugs

Real-Life Uses of ‘If’ Statements in C Programming

Sure, let’s dive into some practical scenarios where companies use the “if statement” in C programming. These examples will illustrate how an “if statement” can assist in real-world applications.
  1. User Authentication in Facebook
    Facebook uses “if statements” in its C codebase to verify user credentials. When a user tries to log in, the system checks if the entered password matches the one stored in the database.
    
    char storedPassword[] = "securePassword";
    char enteredPassword[] = "inputPassword";
    if (strcmp(storedPassword, enteredPassword) == 0) {
        printf("Login successful.");
    } else {
        printf("Login failed. Try again.");
    }
    
    In this scenario, the code checks passwords. If they match, access is granted; otherwise, the user is prompted to try again.
  2. Flight Booking System in British Airways
    British Airways could use “if statements” to determine seating classifications. If a passenger books a ticket, the system assigns a cabin class based on ticket type.
    
    int ticketType = 1; // 1 for Economy, 2 for Business
    if (ticketType == 1) {
        printf("Seat assigned in Economy Class.");
    } else if (ticketType == 2) {
        printf("Seat assigned in Business Class.");
    } else {
        printf("Invalid ticket type.");
    }
    
    Here, the code checks the ticket type and assigns seating accordingly, making the process efficient and organised.
  3. Inventory Control in Amazon
    Amazon might use “if statements” to manage inventory levels. The system checks product quantities and triggers reordering when stock is low.
    
    int stockLevel = 5; 
    int reorderThreshold = 10;
    if (stockLevel < reorderThreshold) {
        printf("Low stock! Reorder needed.");
    } else {
        printf("Stock level is adequate.");
    }
    
    Through this, Amazon ensures that products are always available, enhancing customer satisfaction and operational efficiency.
Each of these examples utilises simple "if statements" to make decisions based on conditions laid out in the code, thereby streamlining complex processes.

Interview Questions: If Statement



  1. What happens if the condition in an if statement is always false?


    If the condition in an 'if' statement is always false, the code block inside that 'if' condition won't be executed. Instead, the program will skip to any subsequent code, like 'else if' or 'else' structures, or continue with the rest of the program if there are none.




  2. Is it possible to have multiple conditions in a single if statement?


    Absolutely! You can use logical operators like '&&' (AND), '||' (OR) to combine multiple conditions within a single 'if' statement. For instance:

    if (a > b && b > c) {
    printf("a is the largest");
    }

    Here, both conditions must be true for the statement to execute.




  3. Can we place a semicolon immediately after an if statement condition?


    While you technically can, be wary—it's a common mistake! If you put a semicolon right after the 'if' condition, like so:

    if (x == y);
    {
    // code block
    }

    This will cause the compiler to interpret the 'if' statement as a no-operation, and the block will always execute regardless of the condition.



  4. How do you use an if statement with strings?


    Since C doesn't support direct string comparison using '==' like in Python, you'll need the 'strcmp()' function from the string library:

    if (strcmp(string1, string2) == 0) {
    printf("Strings are equal");
    }

    Remember to include the string.h header file!




  5. What are the limitations of using if statements in C?


    Constant use of nested 'if' statements can make code hard to read and maintain. Also, they become less efficient with complex conditions, and may make error tracing difficult.




  6. Can we use if statements within a loop?


    You sure can! Inserting 'if' statements within loops like 'for', 'while', and 'do-while' is a common practice to perform conditional checks during iterations.


  7. What's the difference between if-else and switch statements?
    'If-else' is great for checking conditions that involve relational comparison, while 'switch' is tailor-made for checking a variable against a series of integral values or constant expressions, making it a bit easier to read for this scenario.

  8. Can an if statement stand alone without an else or else if?
    Yep, an 'if' statement doesn't need an accompanying 'else' or 'else if'. It's perfectly fine to have a standalone 'if' to perform an action if a condition is true and do nothing otherwise.



With our AI-powered c online compiler, you can instantly write, run, and test your C code seamlessly. Powered by intelligent algorithms, our compiler optimises coding efficiency, making it quicker and more intuitive for users to bring their coding ideas to life without any hassle.

Conclusion

Learning "How to Use if Statement in C" equips you with decision-making skills crucial for coding. By mastering this, you'll feel more confident in your problem-solving abilities. Ready to explore more? Dive into other programming languages like Java and Python with Newtum for a rewarding coding journey.

Edited and Compiled by

This article was compiled and edited by @rasikadeshpande, who has over 4 years of experience in writing. She's passionate about helping beginners understand technical topics in a more interactive way.

About The Author