SlideShare a Scribd company logo
1 of 17
Dhaka International University
1
Presentation Name: Function in C Language
Presented To
Mr. Tahzib Ul Islam
Assistant Professor of CSE
Dhaka International University
Presented By
Group: Quiet Fools
Name: Shuvongkor Barman Roll: 38
Name: Minhaj Uddin Roll: 22
Name: Mostofa Kamal Roll: 20
Batch: 59 (Eve)
Department: CSE
2
1. What is C function?
2.Types of C functions
3. Uses of C functions
4. Advantage of C functions
5. C function declaration, function call and definition
6. Simple Example Program for C Function
7. How to call C functions in a program?
8. Overview
Outline
3
1.What is C Function?
In short: A function is a group of statements that together
perform a task.
C functions are basic building blocks in a program.
Long Answer: A large C program is divided into basic
building blocks called C function. C function contains set of
instructions enclosed by “{ }” which performs specific
operation in a C program. Actually, Collection of these
functions creates a C program
Classification Of
Function
Library
function
User define
function
- main()
-printf()
-scanf()
-sqrt()
-getchar()
4A large program in c can be divided to many subprogram
The subprogram posses a self contain components and have well define
purpose.
The subprogram is called as a function
Basically a job of function is to do something
C program contain at least one function which is main().
2. Types of C functions
5
Standard Library Functions:
Library functions in C language are inbuilt functions which are grouped together and placed in a
common place called library. Each library function in C performs specific operation.
The standard library functions are built-in functions in C programming to handle tasks such as
mathematical computations, I/O processing, string handling etc.
These functions are defined in the header file. When you include the header file, these functions
are available for use. For example:
➤ The printf() is a standard library function to send formatted output to the screen (display
output on the screen). This function is defined in "stdio.h" header file.
➤ There are other numerous library functions defined under "stdio.h", such as scanf(), printf(),
getchar() etc. Once you include "stdio.h" in your program, all these functions are available for
use.
User-defined Functions:
As mentioned earlier, C allow programmers to define functions. Such functions created by
the user are called user-defined functions.
Depending upon the complexity and requirement of the program, you can create as many
user-defined functions as you want.
6
 C functions are used to avoid rewriting same logic/code again
and again in a program.
 There is no limit in calling C functions to make use of same
functionality wherever required.
 We can call functions any number of times in a program and
from any place in a program.
 A large C program can easily be tracked when it is divided into
functions.
 The core concept of C functions are, re-usability, dividing a big
task into small pieces to achieve the functionality and to
improve understandability of very large C programs.
3. Uses of C functions:
It is much easier to write a structured program where a large
program can be divided into a smaller, simpler task.
Allowing the code to be called many times
Easier to read and update
It is easier to debug a structured program where there error is
easy to find and fix
7
8
C functions aspects syntax
function definition
Return_type function_name
(arguments list)
{ Body of function; }
function call function_name (arguments list);
function declaration
return_type function_name
(argument list);
There are 3 aspects in each C function. They are,
 Function declaration or prototype – this informs compiler about the
function name, function parameters and return value’s data type.
 Function call - this calls the actual function
 Function definition – this contains all the statements to be executed.
5. C function declaration, function call and function definition:
9 As you know, functions should be declared and defined before calling in a C program.
 In the below program, function “square” is called from main function.
 The value of “m” is passed as argument to the function “square”. This value is multiplied by itself in this function and
multiplied value “p” is returned to main function from function “square”.
6. Simple Example Program for C Function:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include<stdio.h>
// function prototype, also called function declaration
float square ( float x );
// main function, program starts from here
int main( )
{
float m, n ;
printf ( "nEnter some number for finding square n");
scanf ( "%f", &m ) ;
// function call
n = square ( m ) ;
printf ( "nSquare of the given number %f is %f",m,n );
}
float square ( float x ) // function definition
{
float p ;
p = x * x ;
return ( p ) ;
}
Enter some number for finding square 2
Square of the given number 2.000000 is
4.000000
Output:
Enter some number for finding square 4
Square of the given number 2.000000 is
16.000000
10#include <stdio.h>
/* function declaration */
int max(int num1, int num2);
int main () {
/* local variable definition */
int a = 200;
int b = 800;
int ret;
/* calling a function to get max value */
ret = max(a, b);
printf( "Max value is : %dn", ret );
return 0;
}
/* function returning the max between two numbers */
int max(int num1, int num2) {
/* local variable declaration */
int result;
if (num1 > num2)
result = num1;
else
result = num2;
return result;
}
We have kept max() along with main() and
compiled the source code. While running the
final executable, it would produce the
following result −
Max value is : 800
Output:
1: #include <stdio.h>
2:
3: long cube(long x);
4:
5: long input, answer;
6:
7: int main( void )
8: {
9: printf(“Enter an integer value: “);
10: scanf(“%d”, &input);
11: answer = cube(input);
12: printf(“nThe cube of %ld is %ld.n”, input, answer);
13:
14: return 0;
15: }
16:
17: long cube(long x)
18: {
19: long x_cubed;
20:
21: x_cubed = x * x * x;
22: return x_cubed;
23: }
 Function names is
cube
 Variable that are
requires is long
 The variable to be
passed on is X(has
single arguments)—
value can be passed
to function so it can
perform the specific
task. It is called
Output
Enter an integer value: 4
The cube of 4 is 64.
Return data type
Arguments/formal parameter
Actual parameters
11
127. How To Call C Functions In A Program?
There are two ways that a C function can be called from a program.
They are,
1.Call by value
2.Call by reference
1. Call By Value:
•In call by value method, the value of the variable is passed to the function as
parameter.
•The value of the actual parameter can not be modified by formal parameter.
•Different Memory is allocated for both actual and formal parameters. Because,
value of actual parameter is copied to formal parameter.
13
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include<stdio.h>
// function prototype, also called function declaration
void swap(int a, int b);
int main()
{
int m = 22, n = 44;
// calling swap function by value
printf(" values before swap m = %d nand n = %d", m, n);
swap(m, n);
}
void swap(int a, int b)
{
int tmp;
tmp = a;
a = b;
b = tmp;
printf(" nvalues after swap m = %dn and n = %d", a, b);
}
values before swap m = 22
and n = 44
values after swap m = 44
and n = 22
 In this program, the
values of the
variables “m” and “n”
are passed to the
function “swap”.
 These values are
copied to formal
parameters “a” and
“b” in swap function
and used.
Example Program For C Function (Using Call By Value):
14
2. Call by reference:
•In call by reference method, the
address of the variable is passed
to the function as parameter.
•The value of the actual parameter
can be modified by formal
parameter.
•Same memory is used for both
actual and formal parameters since
only address is used by both
parameters
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include<stdio.h>
// function prototype, also called function declaration
void swap(int *a, int *b);
int main()
{
int m = 22, n = 44;
// calling swap function by reference
printf("values before swap m = %d n and n = %d",m,n);
swap(&m, &n);
}
void swap(int *a, int *b)
{
int tmp;
tmp = *a;
*a = *b;
*b = tmp;
printf("n values after swap a = %d nand b = %d", *a, *b);
}
Example Program For C Function
(Using Call By Reference):
•In this program, the address of the
variables “m” and “n” are passed to
the function “swap”.
•These values are not copied to
formal parameters “a” and “b” in
swap function.
•Because, they are just holding the
address of those variables.
•This address is used to access and
change the values of the variables.
values before swap m = 22
and n = 44
values after swap a = 44
and b = 22
Output:
15Overview
C functions are basic building blocks in every C program.
There are 2 types of functions in C. They are, 1. Library functions 2. User defined functions
Key points to remember while writing functions in C language:
 All C programs contain main() function which is mandatory.
 main() function is the function from where every C program is started to execute.
 Name of the function is unique in a C program.
 C Functions can be invoked from anywhere within a C program.
 There can any number of functions be created in a program. There is no limit on this.
 There is no limit in calling C functions in a program.
 All functions are called in sequence manner specified in main() function.
 One function can be called within another function.
 C functions can be called with or without arguments/parameters. These arguments are nothing but
inputs to the functions.
16
 C functions may or may not return values to calling functions. These values are
nothing but output of the functions.
 When a function completes its task, program control is returned to the function
from where it is called.
 There can be functions within functions.
 Before calling and defining a function, we have to declare function prototype in
order to inform the compiler about the function name, function parameters and
return value type.
 C function can return only one value to the calling function.
 When return data type of a function is “void”, then, it won’t return any values
 When return data type of a function is other than void such as “int, float,
double”, it returns value to the calling function.
 main() program comes to an end when there is no functions or commands to
execute.
17
Thank You
Created and Presented by

More Related Content

What's hot (20)

Control statements in c
Control statements in cControl statements in c
Control statements in c
 
Variables in C Programming
Variables in C ProgrammingVariables in C Programming
Variables in C Programming
 
FUNCTIONS IN c++ PPT
FUNCTIONS IN c++ PPTFUNCTIONS IN c++ PPT
FUNCTIONS IN c++ PPT
 
Conditional Statement in C Language
Conditional Statement in C LanguageConditional Statement in C Language
Conditional Statement in C Language
 
Operators in c programming
Operators in c programmingOperators in c programming
Operators in c programming
 
Operator Overloading
Operator OverloadingOperator Overloading
Operator Overloading
 
friend function(c++)
friend function(c++)friend function(c++)
friend function(c++)
 
Functions in c language
Functions in c language Functions in c language
Functions in c language
 
String functions in C
String functions in CString functions in C
String functions in C
 
Structure of a C program
Structure of a C programStructure of a C program
Structure of a C program
 
Pointer in c
Pointer in cPointer in c
Pointer in c
 
Programming in C Presentation upto FILE
Programming in C Presentation upto FILEProgramming in C Presentation upto FILE
Programming in C Presentation upto FILE
 
Functions in c++
Functions in c++Functions in c++
Functions in c++
 
C tokens
C tokensC tokens
C tokens
 
Constants in C Programming
Constants in C ProgrammingConstants in C Programming
Constants in C Programming
 
Function overloading(c++)
Function overloading(c++)Function overloading(c++)
Function overloading(c++)
 
data types in C programming
data types in C programmingdata types in C programming
data types in C programming
 
C functions
C functionsC functions
C functions
 
Dynamic memory allocation in c
Dynamic memory allocation in cDynamic memory allocation in c
Dynamic memory allocation in c
 
Array in c
Array in cArray in c
Array in c
 

Similar to Presentation on Function in C Programming

CH.4FUNCTIONS IN C_FYBSC(CS).pptx
CH.4FUNCTIONS IN C_FYBSC(CS).pptxCH.4FUNCTIONS IN C_FYBSC(CS).pptx
CH.4FUNCTIONS IN C_FYBSC(CS).pptxSangeetaBorde3
 
USER DEFINED FUNCTIONS IN C.pdf
USER DEFINED FUNCTIONS IN C.pdfUSER DEFINED FUNCTIONS IN C.pdf
USER DEFINED FUNCTIONS IN C.pdfBoomBoomers
 
Lecture 1_Functions in C.pptx
Lecture 1_Functions in C.pptxLecture 1_Functions in C.pptx
Lecture 1_Functions in C.pptxKhurramKhan173
 
Programming Fundamentals Functions in C and types
Programming Fundamentals  Functions in C  and typesProgramming Fundamentals  Functions in C  and types
Programming Fundamentals Functions in C and typesimtiazalijoono
 
unit3 part2 pcds function notes.pdf
unit3 part2 pcds function notes.pdfunit3 part2 pcds function notes.pdf
unit3 part2 pcds function notes.pdfJAVVAJI VENKATA RAO
 
Presentation on function
Presentation on functionPresentation on function
Presentation on functionAbu Zaman
 
Function in c program
Function in c programFunction in c program
Function in c programumesh patil
 
IIM.Com-FIT-Unit2(14.9.2021 TO 30.9.2021).pptx
IIM.Com-FIT-Unit2(14.9.2021 TO 30.9.2021).pptxIIM.Com-FIT-Unit2(14.9.2021 TO 30.9.2021).pptx
IIM.Com-FIT-Unit2(14.9.2021 TO 30.9.2021).pptxrajkumar490591
 
UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...
UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...
UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...RSathyaPriyaCSEKIOT
 

Similar to Presentation on Function in C Programming (20)

CH.4FUNCTIONS IN C_FYBSC(CS).pptx
CH.4FUNCTIONS IN C_FYBSC(CS).pptxCH.4FUNCTIONS IN C_FYBSC(CS).pptx
CH.4FUNCTIONS IN C_FYBSC(CS).pptx
 
cp Module4(1)
cp Module4(1)cp Module4(1)
cp Module4(1)
 
unit_2 (1).pptx
unit_2 (1).pptxunit_2 (1).pptx
unit_2 (1).pptx
 
unit_2.pptx
unit_2.pptxunit_2.pptx
unit_2.pptx
 
USER DEFINED FUNCTIONS IN C.pdf
USER DEFINED FUNCTIONS IN C.pdfUSER DEFINED FUNCTIONS IN C.pdf
USER DEFINED FUNCTIONS IN C.pdf
 
Function in c
Function in cFunction in c
Function in c
 
Unit-III.pptx
Unit-III.pptxUnit-III.pptx
Unit-III.pptx
 
Unit 3 (1)
Unit 3 (1)Unit 3 (1)
Unit 3 (1)
 
Functionincprogram
FunctionincprogramFunctionincprogram
Functionincprogram
 
Lecture 1_Functions in C.pptx
Lecture 1_Functions in C.pptxLecture 1_Functions in C.pptx
Lecture 1_Functions in C.pptx
 
C function
C functionC function
C function
 
Programming Fundamentals Functions in C and types
Programming Fundamentals  Functions in C  and typesProgramming Fundamentals  Functions in C  and types
Programming Fundamentals Functions in C and types
 
unit3 part2 pcds function notes.pdf
unit3 part2 pcds function notes.pdfunit3 part2 pcds function notes.pdf
unit3 part2 pcds function notes.pdf
 
Function C programming
Function C programmingFunction C programming
Function C programming
 
Presentation on function
Presentation on functionPresentation on function
Presentation on function
 
Function in c program
Function in c programFunction in c program
Function in c program
 
User Defined Functions in C Language
User Defined Functions   in  C LanguageUser Defined Functions   in  C Language
User Defined Functions in C Language
 
IIM.Com-FIT-Unit2(14.9.2021 TO 30.9.2021).pptx
IIM.Com-FIT-Unit2(14.9.2021 TO 30.9.2021).pptxIIM.Com-FIT-Unit2(14.9.2021 TO 30.9.2021).pptx
IIM.Com-FIT-Unit2(14.9.2021 TO 30.9.2021).pptx
 
UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...
UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...
UNIT-1 notes(Data Types – Variables – Operations – Expressions and Statements...
 
Functions struct&union
Functions struct&unionFunctions struct&union
Functions struct&union
 

Recently uploaded

UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduitsrknatarajan
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsRussian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxpranjaldaimarysona
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Dr.Costas Sachpazis
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTINGMANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTINGSIVASHANKAR N
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...Call Girls in Nagpur High Profile
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...Call Girls in Nagpur High Profile
 
Glass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesGlass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesPrabhanshu Chaturvedi
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptxBSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptxfenichawla
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations120cr0395
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 

Recently uploaded (20)

UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduits
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsRussian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptx
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTINGMANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
Glass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesGlass Ceramics: Processing and Properties
Glass Ceramics: Processing and Properties
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptxBSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
BSides Seattle 2024 - Stopping Ethan Hunt From Taking Your Data.pptx
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 

Presentation on Function in C Programming

  • 1. Dhaka International University 1 Presentation Name: Function in C Language Presented To Mr. Tahzib Ul Islam Assistant Professor of CSE Dhaka International University Presented By Group: Quiet Fools Name: Shuvongkor Barman Roll: 38 Name: Minhaj Uddin Roll: 22 Name: Mostofa Kamal Roll: 20 Batch: 59 (Eve) Department: CSE
  • 2. 2 1. What is C function? 2.Types of C functions 3. Uses of C functions 4. Advantage of C functions 5. C function declaration, function call and definition 6. Simple Example Program for C Function 7. How to call C functions in a program? 8. Overview Outline
  • 3. 3 1.What is C Function? In short: A function is a group of statements that together perform a task. C functions are basic building blocks in a program. Long Answer: A large C program is divided into basic building blocks called C function. C function contains set of instructions enclosed by “{ }” which performs specific operation in a C program. Actually, Collection of these functions creates a C program
  • 4. Classification Of Function Library function User define function - main() -printf() -scanf() -sqrt() -getchar() 4A large program in c can be divided to many subprogram The subprogram posses a self contain components and have well define purpose. The subprogram is called as a function Basically a job of function is to do something C program contain at least one function which is main(). 2. Types of C functions
  • 5. 5 Standard Library Functions: Library functions in C language are inbuilt functions which are grouped together and placed in a common place called library. Each library function in C performs specific operation. The standard library functions are built-in functions in C programming to handle tasks such as mathematical computations, I/O processing, string handling etc. These functions are defined in the header file. When you include the header file, these functions are available for use. For example: ➤ The printf() is a standard library function to send formatted output to the screen (display output on the screen). This function is defined in "stdio.h" header file. ➤ There are other numerous library functions defined under "stdio.h", such as scanf(), printf(), getchar() etc. Once you include "stdio.h" in your program, all these functions are available for use. User-defined Functions: As mentioned earlier, C allow programmers to define functions. Such functions created by the user are called user-defined functions. Depending upon the complexity and requirement of the program, you can create as many user-defined functions as you want.
  • 6. 6  C functions are used to avoid rewriting same logic/code again and again in a program.  There is no limit in calling C functions to make use of same functionality wherever required.  We can call functions any number of times in a program and from any place in a program.  A large C program can easily be tracked when it is divided into functions.  The core concept of C functions are, re-usability, dividing a big task into small pieces to achieve the functionality and to improve understandability of very large C programs. 3. Uses of C functions:
  • 7. It is much easier to write a structured program where a large program can be divided into a smaller, simpler task. Allowing the code to be called many times Easier to read and update It is easier to debug a structured program where there error is easy to find and fix 7
  • 8. 8 C functions aspects syntax function definition Return_type function_name (arguments list) { Body of function; } function call function_name (arguments list); function declaration return_type function_name (argument list); There are 3 aspects in each C function. They are,  Function declaration or prototype – this informs compiler about the function name, function parameters and return value’s data type.  Function call - this calls the actual function  Function definition – this contains all the statements to be executed. 5. C function declaration, function call and function definition:
  • 9. 9 As you know, functions should be declared and defined before calling in a C program.  In the below program, function “square” is called from main function.  The value of “m” is passed as argument to the function “square”. This value is multiplied by itself in this function and multiplied value “p” is returned to main function from function “square”. 6. Simple Example Program for C Function: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #include<stdio.h> // function prototype, also called function declaration float square ( float x ); // main function, program starts from here int main( ) { float m, n ; printf ( "nEnter some number for finding square n"); scanf ( "%f", &m ) ; // function call n = square ( m ) ; printf ( "nSquare of the given number %f is %f",m,n ); } float square ( float x ) // function definition { float p ; p = x * x ; return ( p ) ; } Enter some number for finding square 2 Square of the given number 2.000000 is 4.000000 Output: Enter some number for finding square 4 Square of the given number 2.000000 is 16.000000
  • 10. 10#include <stdio.h> /* function declaration */ int max(int num1, int num2); int main () { /* local variable definition */ int a = 200; int b = 800; int ret; /* calling a function to get max value */ ret = max(a, b); printf( "Max value is : %dn", ret ); return 0; } /* function returning the max between two numbers */ int max(int num1, int num2) { /* local variable declaration */ int result; if (num1 > num2) result = num1; else result = num2; return result; } We have kept max() along with main() and compiled the source code. While running the final executable, it would produce the following result − Max value is : 800 Output:
  • 11. 1: #include <stdio.h> 2: 3: long cube(long x); 4: 5: long input, answer; 6: 7: int main( void ) 8: { 9: printf(“Enter an integer value: “); 10: scanf(“%d”, &input); 11: answer = cube(input); 12: printf(“nThe cube of %ld is %ld.n”, input, answer); 13: 14: return 0; 15: } 16: 17: long cube(long x) 18: { 19: long x_cubed; 20: 21: x_cubed = x * x * x; 22: return x_cubed; 23: }  Function names is cube  Variable that are requires is long  The variable to be passed on is X(has single arguments)— value can be passed to function so it can perform the specific task. It is called Output Enter an integer value: 4 The cube of 4 is 64. Return data type Arguments/formal parameter Actual parameters 11
  • 12. 127. How To Call C Functions In A Program? There are two ways that a C function can be called from a program. They are, 1.Call by value 2.Call by reference 1. Call By Value: •In call by value method, the value of the variable is passed to the function as parameter. •The value of the actual parameter can not be modified by formal parameter. •Different Memory is allocated for both actual and formal parameters. Because, value of actual parameter is copied to formal parameter.
  • 13. 13 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 #include<stdio.h> // function prototype, also called function declaration void swap(int a, int b); int main() { int m = 22, n = 44; // calling swap function by value printf(" values before swap m = %d nand n = %d", m, n); swap(m, n); } void swap(int a, int b) { int tmp; tmp = a; a = b; b = tmp; printf(" nvalues after swap m = %dn and n = %d", a, b); } values before swap m = 22 and n = 44 values after swap m = 44 and n = 22  In this program, the values of the variables “m” and “n” are passed to the function “swap”.  These values are copied to formal parameters “a” and “b” in swap function and used. Example Program For C Function (Using Call By Value):
  • 14. 14 2. Call by reference: •In call by reference method, the address of the variable is passed to the function as parameter. •The value of the actual parameter can be modified by formal parameter. •Same memory is used for both actual and formal parameters since only address is used by both parameters 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 #include<stdio.h> // function prototype, also called function declaration void swap(int *a, int *b); int main() { int m = 22, n = 44; // calling swap function by reference printf("values before swap m = %d n and n = %d",m,n); swap(&m, &n); } void swap(int *a, int *b) { int tmp; tmp = *a; *a = *b; *b = tmp; printf("n values after swap a = %d nand b = %d", *a, *b); } Example Program For C Function (Using Call By Reference): •In this program, the address of the variables “m” and “n” are passed to the function “swap”. •These values are not copied to formal parameters “a” and “b” in swap function. •Because, they are just holding the address of those variables. •This address is used to access and change the values of the variables. values before swap m = 22 and n = 44 values after swap a = 44 and b = 22 Output:
  • 15. 15Overview C functions are basic building blocks in every C program. There are 2 types of functions in C. They are, 1. Library functions 2. User defined functions Key points to remember while writing functions in C language:  All C programs contain main() function which is mandatory.  main() function is the function from where every C program is started to execute.  Name of the function is unique in a C program.  C Functions can be invoked from anywhere within a C program.  There can any number of functions be created in a program. There is no limit on this.  There is no limit in calling C functions in a program.  All functions are called in sequence manner specified in main() function.  One function can be called within another function.  C functions can be called with or without arguments/parameters. These arguments are nothing but inputs to the functions.
  • 16. 16  C functions may or may not return values to calling functions. These values are nothing but output of the functions.  When a function completes its task, program control is returned to the function from where it is called.  There can be functions within functions.  Before calling and defining a function, we have to declare function prototype in order to inform the compiler about the function name, function parameters and return value type.  C function can return only one value to the calling function.  When return data type of a function is “void”, then, it won’t return any values  When return data type of a function is other than void such as “int, float, double”, it returns value to the calling function.  main() program comes to an end when there is no functions or commands to execute.
  • 17. 17 Thank You Created and Presented by