(C Programming Tutorials)
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.

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: -2 You 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: 5 The 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.

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: 7 7 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: 12 23 Result: 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");
Disclaimer: The information and code presented within this recipe/tutorial is only for educational and coaching purposes for beginners and developers. Anyone can practice and apply the recipe/tutorial presented here, but the reader is taking full responsibility for his/her actions. The author (content curator) of this recipe (code / program) has made every effort to ensure the accuracy of the information was correct at time of publication. The author (content curator) does not assume and hereby disclaims any liability to any party for any loss, damage, or disruption caused by errors or omissions, whether such errors or omissions result from accident, negligence, or any other cause. The information presented here could also be found in public knowledge domains.
Learn by Coding: v-Tutorials on Applied Machine Learning and Data Science for Beginners
Latest end-to-end Learn by Coding Projects (Jupyter Notebooks) in Python and R:
All Notebooks in One Bundle: Data Science Recipes and Examples in Python & R.
End-to-End Python Machine Learning Recipes & Examples.
End-to-End R Machine Learning Recipes & Examples.
Applied Statistics with R for Beginners and Business Professionals
Data Science and Machine Learning Projects in Python: Tabular Data Analytics
Data Science and Machine Learning Projects in R: Tabular Data Analytics
Python Machine Learning & Data Science Recipes: Learn by Coding
R Machine Learning & Data Science Recipes: Learn by Coding
Comparing Different Machine Learning Algorithms in Python for Classification (FREE)
There are 2000+ End-to-End Python & R Notebooks are available to build Professional Portfolio as a Data Scientist and/or Machine Learning Specialist. All Notebooks are only $29.95. We would like to request you to have a look at the website for FREE the end-to-end notebooks, and then decide whether you would like to purchase or not.
C Example for Beginners: C Program to Find the Largest Number Among Three Numbers