C program has at least one main() function. The use of function in a program makes it modular.
Modularity means partitioning a complex problem into small sub-problems which are easy to understand and maintain.
There are two categories of functions in C.
(1) Library functions or System defined functions
(2) User defined functions
Library Functions :-The C language standard library provides many built-in functions that our program can use. They are also known as system defined functions. For example printf( ), scanf(), sqrt() and cos are examples of library functions
User Defined Functions
The functions developed by user are known as user defined functions. The main() is special type of user defined function in C. The program execution starts from main() function. Testing and debugging of such program may be become difficult for programmer.
Variables By scope of variable we mean the part of program where the variable is accessible. In C scope of variables are of two types:
(i) Global variables
(ii) Local variables
These formal parameters accept the value sent at the time of calling function from the main(). The integer variable result returns the addition of two numbers to the caller function which is stored in total variable of main().
Function Prototype
The function prototype is needed when the function is defined after the main() in a program. When we call any function in our program, compiler searches for a corresponding function definition.
(1) The main() function in C language is a
(a) User defined function
(b) Library function
(c) Keyword
(d) Reserved function
(2) By default the main() function returns
(a) Char value
(b) Float value
(c) Integer value
(d) Double value
(3) Which keyword is used as a return type when function does not return any value?
(a) int
(b) main
(c) void
(d) auto
(4) Which of the following is not an inbuilt library function ?
(a) pow()
(b) printf()
(c) sum()
(d) sqrt()
(5) What will be the value of variable number2 after execution of following code :
int main() {
int number1 = 2, number2;
number2 = sqr(number1);
printf("number2 = %d",number2);
return 0;
int sqr(int n){
return(n*n); }//End of program
(a) number2 = 4
(b) number2 = 6
(C) number2 = 8
(d) number2 = 18
Function