Skip to main content

function in C - Computer science fundamentals tutorial

Functions in C

Functions are subprogram which are used to compute a value or perform a task. They can't be run independently and are always called by main() program or by some other function.

Types of function : - 

1. Library or built in function : - Library function are used to perform  standard operation. Example printf(), scanf(), etc.

2. User defined Function : - User defined function are self contain block of statement which are written by user to compare a value or to perform a task. They can be called by the main program repeatedly as per requirements.

Uses of function : - 
1. Functions are very much useful when a block of sentences has to be executed again and again.

2.When the program is to long or complex function are called to perform each task sequence from  main program.  
3. Functions are also used to reduced the different during debugging a program

Function declaration :- 

type name(arg 1,arg 2,.......,arg n)
{
  (local declaration)
   ............................
   (statement block)
.................................
   return(variable or expression)
}

Calling a function : -

A function is called by calling program using the function with the required number of arguments in parentheses. The function called appears in an assignment statement or in an output statement.

example of C program using function

#include<stdio.h>
void Fact(int);//function prototype declearation
int i,fact=1;//global variable declearation
int main() 
{
int n;
printf("\n enter the  number:");
scanf("%d",&n);
Fact(n);//function call
}
//function definition
void Fact(int n) 
{
for(i=1; i<=n; i++) 
{
fact=fact*i;
}
printf("\n factorial of %d is=%d",n,fact);
}
Program explanation:
1. for example we take 5 as input.
2.we declare the void Fact(int) function globally.
3.after taking function call we give the function definition outside the main function.
4. in function definition for loop started.In for loop i=1 & fact=1 then fact=1. after this loop is continue and incremented by1 until the n is grater than equal to i. 
OUTPUT
**NOTES**
Actual arguments & Formal arguments
the arguments listed in the function calling statement are referred to as Actual arguments.
the arguments listed in the function declaration are referred  to as Formal arguments.  


Recursion
A function calling it self again and again to compute a value is preferred to as recursion or recursive function. Normally a function is called by the main function or by other function but in recursion same function is called by itself repeatedly.
Example of recursion

#include<stdio.h>



main() 

{

int k,f;
int Fact(int);
printf("\n enter the  number:");
scanf("%d",&k);
printf("\n factorial of %d is=%d",k,Fact(k));
}
//function definition
int Fact(int k) 
{
  if(k==0)
  return(1);
  else 
  return(k*Fact(k-1));
}
Output


Uses of Recursive functions: -
1. Recursive functions are retain with less number of statement             compared to function.
2. Recursion is effective where terms are generated successively to      compute value.
3.  Recursion is useful for branching processes recursion helps to         create short code that would other wise be impossible. 
Void function
A function which does not return a value directly to the calling program is referred as a void function. The void function commonly used to perform a task and they declaration. It is declared with the keyword instead of data type of the function.
A void function can also use a return statement without a return value.

Comments

Popular posts from this blog

type casting in C. - computer science fundamentals tutorial

Typecasting in C Typecasting is also known as "forced conversion". It refers to changing variable one data type to another data type.          Typecasting in can be certified into following two types: - 1) Implicit type casting. 2) Explicit type casting. Implicit type casting : - It is also known as "Automatic type conversion". It is done by compiler on its own without any external trigger from user. Generally takes place when in an expression more than one data type is present in such condition. Type conversion take places to avoid data lose. Example : - #include<stdio.h> main() {   char y = 'a';   int b = y; printf("%c",y); printf("%d",b); } Explicit Type casting : - This process also called 'Type casting' and it is user defined . Here the user can type cast the result to make it of particular data type. Example : - #include<stdio.h> main() { int m

Important MCQ of RDBMS( Relational database management system)-FCST

Important MCQ of RDBMS  1. A RDBMS consists a collection of ? a. Tables b. Fields c. Records d. Keys  ANS/- a. table 2. The term attribute refers to a ___________ of a table a. Record b. Tuple c. Column d. Key   ans/- c. Column 3. In relational model, the row of table is known to be ?  a. Relation b. Entity field c. Tuple d. Attribute  ans/- C. Tuple 4. . Address field of a person should not be part of primary key, since it is likely to ? a. Dependent b. Too long c. Changed d. Not changed  ans/- c. Changed 5. The relational model is concerned with ? a. Data structure and Data integrity b. Data Manipulation c. Both a and b d. None of these  ans/- c. Both a and b 6. Which is the false statement from the following ? a. A veiw is a named derived table b. A name relation is variable c. A veiw is a named reation and is virtual d. None of these  ans/- d. None of these 7. The union of primary keys of the related entity sets becomes a

Solve-write C program to find grade of student by using nested else-if statement

C program to find grade of student by using nested else-if statement Problem Description This program take input as your number then show your grade. Problem Solution 1. enter your marks as input. 2. then check your marks with 'If' block's condition. if it satisfied then show your grade as output. 3. if it not satisfied then it checks with all else-if block's condition repeatedly. 4. print the grade according to your given marks as input and exit. Program codes:-   #include<stdio.h> main() { int n; printf("\n enter the marks:"); scanf("%d",&n); if(n>89) printf("O"); else if(n>79) printf("E"); else if(n>69) printf("A"); else if(n>59) printf("B"); else if(n>49) printf("C"); else if(n>39) printf("D"); else printf("F"); } Program explanation:- 1. enter your marks. for example we take 70 .