# Functions in C | hackerrank practice problem solution

Problem:-

In this challenge, you will learn simple usage of functions in C. Functions are a bunch of statements grouped together. A function is provided with zero or more arguments, and it executes the statements on it. Based on the return type, it either returns nothing (void) or something.

A sample syntax for a function is

`	return_type function_name(arg_type_1 arg_1, arg_type_2 arg_2, ...) {    	...        ...        ...        [if return_type is non void]        	return something of type `return_type`;    }`

For example, a function to read four variables and return the sum of them can be written as

`	int sum_of_four(int a, int b, int c, int d) {    	int sum = 0;        sum += a;        sum += b;        sum += c;        sum += d;        return sum;    }`
`+= : Add and assignment operator. It adds the right operand to the left operand and assigns the result to the left operand.a += b is equivalent to a = a + b;`

Write a function `int max_of_four(int a, int b, int c, int d)` which reads four arguments and returns the greatest of them.

Note

There is not built in `max` function in C. Code that will be reused is often put in a separate function, e.g. `int max(x, y)` that returns the greater of the two values.

Input Format

Input will contain four integers –  , one on each line.

Output Format

Print the greatest of the four integers.
Note: I/O will be automatically handled.

Sample Input

``3465``

Sample Output

``6``

Solution:-

#include <stdio.h>
/*
Add `int max_of_four(int a, int b, int c, int d)` here.
*/
int max_of_four(int a ,int b,int c,int d)
{
if(a>b)
{
if(a>c)
{
if(a>d)
return(a);
else
return(d);
}
else
{
if(c>d)
return(c);
else
return(d);
}
}
else {
if(b>c)
{
if(b>d)
return(b);
else
return(d);
}
else
{
if(c>d)
return(c);
else
return(d);
}
}
}
int main() {
int a, b, c, d;
scanf(“%d %d %d %d”, &a, &b, &c, &d);
int ans = max_of_four(a, b, c, d);
printf(“%d”, ans);
return 0;
}

Recommended post:-

Hackerearth Problems:-

Data structure:-

Key points:-