# C program to find maximum between two numbers

Write a C program to find maximum between two numbers using if else. C program to input two numbers from user and find maximum between two numbers using if else. How to find maximum or minimum between two numbers using if else in C programming.

Example
Input

```Input num1: 10
Input num2: 20```

Output

`Maximum = 20`

## Logic to find minimum or maximum between two numbers

Finding maximum in general is comparison of two numbers. In C programming we compare two quantities using relational operator. We use either `>` or `<` operator to compare two numbers (or other primitive types). Relational operator evaluates 1 (`true`) or 0 (`false`) depending on condition.

We can write expression to find maximum between num1 and num2 as `num1 > num2`. The expression `num1 > num2` evaluate 1 if num1 is greater than num2, otherwise evaluates 0.

After finding maximum, we need to execute some action based on the maximum i.e. print the maximum number. In C `if...else` provides ability to execute an action based on condition. So we will make use of relational operator along with `if...else` to find maximum.

Below is step by step descriptive logic to find maximum.

• Input two numbers from user. Store it in some variable say num1 and num2.
• Check `if(num1 > num2)` then print num1 is maximum.
• Check `if(num2 > num1)` then print num2 is maximum.
• Check `if(num1 == num2)` then both the numbers are equal.

## Program to find maximum using simple `if`

``````/**
* C program to find maximum between two numbers
*/

#include <stdio.h>

int main()
{
int num1, num2;

/* Input two numbers from user */
printf("Enter two numbers: ");
scanf("%d%d", &num1, &num2);

/* If num1 is maximum */
if(num1 > num2)
{
printf("%d is maximum", num1);
}

/* If num2 is maximum */
if(num2 > num1)
{
printf("%d is maximum", num2);
}

/* Additional condition check for equality */
if(num1 == num2)
{
printf("Both are equal");
}

return 0;
}``````

The above approach to check maximum between two numbers is easy to understand. However, instead of writing three conditions you can use if…else statement.

## Program to find maximum between two numbers using `if...else`

``````/**
* C program to find maximum between two numbers
*/

#include <stdio.h>

int main()
{
int num1, num2;

/* Input two numbers from user */
printf("Enter two numbers: ");
scanf("%d%d", &num1, &num2);

/* Compare num1 with num2 */
if(num1 > num2)
{
/* True part means num1 > num2 */
printf("%d is maximum", num1);
}
else
{
/* False part means num1 < num2 */
printf("%d is maximum", num2);
}

return 0;
}``````

You can also use a max variable. Assign maximum in the max variable based on `if...else` condition. Finally print the value of max.

In addition, as you can see in above programs `if` or `else` body contains only single statement. Hence, you can ignore braces `{` `}` after `if` and `else` statement.

## Program to find maximum between two numbers

``````/**
* C program to find maximum between two numbers
*/

#include <stdio.h>

int main()
{
int num1, num2, max;

/* Input two numbers from user */
printf("Enter two numbers: ");
scanf("%d%d", &num1, &num2);

/* Compare num1 with num2 */
if(num1 > num2)
max = num1;
else
max = num2;

printf("%d is maximum.", max);

return 0;
}``````

Advance you skills by learning other approaches to find maximum between two numbers.

```Enter two numbers: 10