SlideShare a Scribd company logo
Unit 4
FUNCTION
 A function is a group of statements that together perform
a task. (or) A Function is a sub-program, which
contains one or more statements and it performs some
task when its called.
 A computer program cannot handle all the tasks by itself.
Instead its requests other program like entities – called
functions in C to get its task done.
Why we use functions?
 Writing functions avoids rewriting the same code over and
over.
 Suppose that there is a section of code in a program that
calculates area of a circle. If later in the program we want to
calculate the area of a different circle, we wont like to write
the same instructions again.
 Instead, we would prefer to jump to a “section of code” that
calculates area and then jump back to the place from where
we left off.
 This section of code is nothing but a function.
 Using functions it becomes easier to write programs and keep
track of what they are doing.
 If the operation of a program can be divided in to separate
activities, and each activity placed in a different function, then
each could be written and checked more or less independently.
 Separating the code in to modular functions also makes the
pro-gram easier to design and understand.
Why we use functions?
TYPES
 There are two different types of functions:
 Pre-defined functions
 User-defined functions
Pre-Defined Functions
 The pre-defined functions or library functions are
built-in functions.
 The user can use the functions, but cannot modify
those functions.
 Example: sqrt()
User-Defined Functions
 The functions defined by the user for their
requirements are called user-defined functions.
 Whenever it is needed, the user can modify this
function.
 Example: sum(a,b)
Advantage of User-Defined Functions
 The length of the source program can be reduced.
 It is easy to locate errors.
 It avoids coding of repeated instructions.
Elements of User-Defined Function
 Function declaration
 Function definition
 Function call
#include <stdio.h>
#include<conio.h>
void main()
{
void add(void); //function declaration
add(); //function call
}
void add() // function definition
{
int a,b,c;
printf("nEnter two number:");
scanf("%d%d",&a,&b);
c=a+b;
printf("nSum is:%d",c);
}
Function
 Syntax
datatype function_name (parameters list)
{
local variable declaration;
…………………………
body of the function;
…………………………
return(expression);
}
How Function Works?
 Once a function is called the control passes to the called function.
 The working of calling function is temporarily stopped.
 When the execution of called function is completed then the
control returns back to the calling function and executes the next
statement.
Parameters
 Actual Parameter
These are the parameters which are transferred from the
calling function to the called function.
 Formal Parameter
These are the parameters which are used in the called
function.
Parameter is variable in the declaration of function.
Argument is the actual value of this variable that gets
passed to function.
return Statement
 The return statement may or may not send some
values to the calling function.
 Syntax:
return; (or)
return (expression);
Function Prototypes
There are four types:
 Function with no arguments and no return values.
 Function with arguments and no return values.
 Function with arguments and return values.
 Function with no arguments and with return values.
Argument is the actual value of the variable that gets
passed to function.
Function with no arguments and no return
values
 Here no data transfer takes place between the calling
function and the called function.
 These functions act independently, i.e. they get input
and display output in the same block.
Example
#include <stdio.h>
#include<conio.h>
void main() //calling function
{
void add(void);
add();
}
void add() //called function
{
int a,b,c;
printf("nEnter two number:");
scanf("%d%d",&a,&b);
c=a+b;
printf("nSum is:%d",c);
}
Output
Enter two number:3
4
Sum is:7
Function with arguments and no return values
 Here data transfer take place between the calling function
and the called function.
 It is a one way data communication, i.e. the called
program receives data from calling program but it does not
return any value to the calling program.
Example
#include <stdio.h>
#include<conio.h>
void main()
{
int a,b;
void add(int,int);
printf("nEnter two number:");
scanf("%d%d",&a,&b);
add(a,b);
}
void add(int x,int y) //function with arguments
{
int z;
z=x+y;
printf("nSum is:%d",z);
}
Output
Enter two number:2
4
Sum is:6
Function with arguments
and return values
 Here data transfer takes place between the calling
function and the called function.
 It is a two way data communication, i.e. the called
program receives data from calling program and it
returns some value to the calling program.
Example
#include <stdio.h>
#include<conio.h>
void main()
{
int a,b,c;
int add(int,int);
printf("nEnter two number:");
scanf("%d%d",&a,&b);
c=add(a,b);
printf("nSum is:%d",c);
}
int add(int x,int y)
{
int z;
z=x+y;
return(z);
}
Output
Enter two number:6
7
Sum is:13
Function with no arguments
and with return values
 Here data transfer takes place between the called
function and the calling function.
 It is a one way data communication, i.e. the called
program does not any receive data from the calling
program but it returns some value to the calling
program.
Example
#include <stdio.h>
#include<conio.h>
void main()
{
int add(),d;
d=add();
printf("nSum is:%d",d);
}
int add() //function with no argument
{
int a,b,c;
printf("nEnter two number:");
scanf("%d%d",&a,&b);
c=a+b;
return(c);
}
Output
Enter two number:5
8
Sum is:13
Parameter Passing Methods
 There are two different ways of passing parameters to a
method, they are:
 Call by value
 Call by reference
Call by value
 Actual arguments are passed to the formal arguments.
 Any changes made to the formal argument does not
affect the actual argument.
Example-swapping
#include <stdio.h>
#include<conio.h>
void main()
{
int x,y;
int swap(int,int);
printf("nEnter value of x:");
scanf("%d",&x);
printf("nEnter value of y:");
scanf("%d",&y);
swap(x,y);
printf("nnValues in the
Main()-->x=%d,y=%d",x,y);
}
int swap(int a,int b)
{
int c;
c=a;
a=b;
b=c;
printf("nValues in the Fuction -->
x=%d, y=%d",a,b);
}
Output:
Call by reference
 Instead of passing values, the address of the argument
will be passed.
 Any changes made to the formal argument will affect
the actual argument.
Example
#include <stdio.h>
#include<conio.h>
void main()
{
int x,y;
int swap(int*,int*);
printf("nEnter value of x:");
scanf("%d",&x);
printf("nEnter value of y:");
scanf("%d",&y);
// address of x and y is passed to the
swap function
swap(&x,&y);
printf("nnValues in the Main-->
x=%d, y=%d",x, y);
}
//pointer a and b points to the address
of x and y respectively.
int swap(int *a, int *b)
{
int c;
c=*a;
*a=*b;
*b=c;
printf("nValues in the Function -->
x=%d,y=%d",*a,*b);
}
output:
Enter value of x:5
Enter value of y:6
Values in the Function -->x=6,y=5
Values in the Main-->x=6,y=5
Recursion
 It is a process of calling the same function itself again and
again until some condition is satisfied.
Syntax:
func1()
{
………..
func1();
…………
}
Example
#include<stdio.h>
#include<conio.h>
void main()
{
int a;
int rec(int);
printf("nEnter the number:");
scanf("%d",&a);
printf("The factorial of %d! is
%d",a,rec(a));
}
int rec(int x)
{
int f;
if(x==1)
return(1);
else
f=x*rec(x-1);
return(f);
}
Output:
Enter the number:5
The factorial of 5! is 120
Example: Working of 3!
Library Function
 Library functions are the pre-defined functions.
 The library function provides functions like
mathematical, string manipulation etc,.
 In order to use a library function, it is necessary to call
the appropriate header file at the beginning of the
program.
 The header file informs the program of the name,
type, and number and type of arguments, of all of the
functions contained in the library in question.
 A header file is called via the preprocessor statement.
Some Examples of Library
Functions
 sqrt(x):
It is used to find the square root of x
Example: sqrt(36) is 6
 abs(x):
It is used to find the absolute value of x
Example: abs(-36) is 36
 pow(x,y):
It is used to find the value of xy
Example: pow(5,2) is 25
 ceil(x):
It is used to find the smallest integer greater than or equal to x.
Example: ceil(7.7) is 8
 rand():
It is used to generate a random number.
 sin(x):
It is used to find the sine value of x
Example: sin(30) is 0.5
 cos (x):
It is used to find the cosine value of x
Example: cos(30) is 0.86
 tan(x):
It is used to find the tan value of x
Example: tan(30) is 0.577
 toascii(x):
It is used to find the ASCII value of x
Example: toascii(a) is 97
 toupper(x):
It is used to convert lowercase character to uppercase.
Example: toupper(‘a’) is A toupper(97) is A
 tolower(x):
It is used to convert uppercase character to lowercase.
Example: tolower(‘A’) is a
Example:
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include<ctype.h>
void main()
{
int x,y=2;
printf("nEnter the number:");
scanf("%d",&x);
printf("nThe square root of %d is %f",x,sqrt(x));
printf("nThe value of %d power%dis%f ",x,y,pow(6,2));
printf("nThe ceiling of 6.7 is %f",ceil(6.7));
printf("nThe floor of 6.7 is %f",floor(6.7));
printf("nThe absolute value of -6 is %d",abs(-6));
printf("nThe value of sin 45 is %f",sin(45));
printf("nThe uppercase of 'a' is %c",toupper('a'));
printf("nThe uppercase of 97 is %c",toupper(97));
getch();
}
Output:
Enter the number:6
The square root of 6 is 2.449490
The value of 6 power 2 is 36.000000
The ceiling of 6.7 is 7.000000
The floor of 6.7 is 6.000000
The absolute value of -6 is 6
The value of sin 45 is 0.850904
The uppercase of 'a' is A
The uppercase of 97 is A
Average of array Elements using user
defined function
To Find the length of the string
with user defined function
The Towers of Hanoi
A Recursion Application
 GIVEN: three poles
 a set of discs on the first pole, discs of different sizes, the
smallest discs at the top
 GOAL: move all the discs from the left pole to the right one.
 CONDITIONS: only one disc may be moved at a time.
 A disc can be placed either on an empty pole or on top of a
larger disc.
Towers of Hanoi
Towers of Hanoi
Towers of Hanoi
Towers of Hanoi
Towers of Hanoi
Towers of Hanoi
Towers of Hanoi
Towers of Hanoi
Random number generation using recursion function
#include <stdio.h>
#include <stdlib.h>
int main()
{
void random(void);
int c, n;
printf("Ten random numbers in [1,100]n");
for (c = 1; c <= 10; c++)
{
random();
}
return 0;
}
void random()
{
int n;
n = rand()%100 + 1;
printf("%dn", n);
}
Output
Pointers
 Pointer is a variable that contains the address of
another variable i.e.. direct address of the memory
location.
 Like any variable or constant, you must declare a
pointer before you can use it to store any variable
address.
Example:
x=5
x Variable
1002 Address
5 Value
Example
#include<stdio.h>
#include<conio.h>
void main()
{
int x=5;
printf("n The Address of x = %u",&x);
printf("n The Value of x = %d",x);
}
Output
The Address of x = 8714
The Value of x = 5
Pointer Declaration
 Syntax:
data-type *pointer-name;
data-type - Type of the data to
which the pointer points.
pointer-name - Name of the pointer
 Example: int *a;
Accessing Variable through Pointer
 If a pointer is declared and assigned to a variable, then
the variable can be accessed through the pointer.
 Example:
int *a;
x=5;
a=&x;
Example
#include<stdio.h>
#include<conio.h>
void main()
{
int y=10;
int *a;
a=&y;
printf("n The Value of y = %d",y);
printf("n The Address of y = %u",&y);
printf("n The Value of a = %d",a);
printf("n The Address of a = %u",&a);
}
Illustration of the example:
5001 10
8000
a y
5001
Variable
Value
Address
Output
The Value of y = 10
The Address of y = 5001
The Value of a = 5001
The Address of a = 8000
Null Pointer
 A pointer is said to be null pointer if zero is assigned to
the pointer.
 For Example:
int *a,*b;
a=b=0;
Pointer to Pointer
 Here one pointer stores the address of another pointer
variable.
 Example:
int x=10,*a,**b;
a=&x;
b=&a;
 Illustration:
5001 10
8000
a x
5001
Variable
Value
Address
8000
9000
b
Output:
The Value of a[0] = 2
The Address of a[0] = 6356736
The Value of a[0] = 3
The Address of a[0] = 6356740
The Value of a[0] = 7
The Address of a[0] = 6356744
The Value of b = 6356736
Example
#include<stdio.h>
#include<conio.h>
void main()
{
int a=10;
int *b,**c;
b=&a;
c=&b;
printf("n The Value of a = %d",a);
printf("n The Address of a = %u",&a);
printf("n The Value of b = %d",b);
printf("n The Address of b = %u",&b);
printf("n The Value of c = %d",c);
printf("n The Address of c = %u",&c);
}
Output
The Value of a = 10
The Address of a = 5001
The Value of b = 5001
The Address of b = 8000
The Value of c = 8000
The Address of c = 9000
#include<stdio.h>
#include<conio.h>
void main()
{
int a=10;
int *b,**c;
b=&a;
c=&b;
printf("n The Value of a = %d",a);
printf("n The Address of a = %u",&a);
printf("n The Value of b = %d",b);
printf("n The Address of b = %u",&b);
printf("n The Value of c = %d",c);
printf("n The Address of c = %u",&c);
printf("n The value of b = %d",*b);
printf("n The value of c = %d",*c);
printf("n The value c = %d",**c);
}
output:
The Value of a = 10
The Address of a = 6356748
The Value of b = 6356748
The Address of b = 6356744
The Value of c = 6356744
The Address of c = 6356740
The Address of b = 10
The Address of c = 6356748
The Address of c = 10
Output:
The Value of a = 10
The Address of a = 6356748
The Value of b = 6356748
The Address of b = 6356744
The Value of c = 6356744
The Address of c = 6356740
The Address of b = 10
The Address of c = 6356748
The Address of c = 10
Pointers and Arrays
 The elements of the array can also be accessed through
a pointer.
 Example
int a[3]={2,3,7};
int *b;
b=a;
Example 1
#include<stdio.h>
#include<conio.h>
void main()
{
int a[3]={2,3,7};
int *b;
b=a; or b=&a;
printf("n The Value of a[0] = %d",a[0]);
printf("n The Address of a[0] = %u",&a[0]);
printf("n The Value of b = %d",b);
}
 Illustration of the example:
8744 2
9000
b a[0]
8744
Variable
Value
Address
Output
The Value of a[0] = 2
The Address of a[0] = 8744
The Value of b = 8744
#include<stdio.h>
#include<conio.h>
void main()
{
int a[3]={2,3,7};
int *b;
b=&a;
printf("n The Value of a[0] = %d",a[0]);
printf("n The Address of a[0] = %u",&a[0]);
printf("n The Value of a[0] = %d",a[1]);
printf("n The Address of a[0] = %u",&a[1]);
printf("n The Value of a[0] = %d",a[2]);
printf("n The Address of a[0] = %u",&a[2]);
printf("n The Value of b = %d",b);
}
Output:
The Value of a[0] = 2
The Address of a[0] = 6356736
The Value of a[0] = 3
The Address of a[0] = 6356740
The Value of a[0] = 7
The Address of a[0] = 6356744
The Value of b = 6356736
Example 2
#include<stdio.h>
#include<conio.h>
void main()
{
int a[5]={2,3,7,9,10};
int i;
for(i=0;i<5;i++)
{
printf("n The Value of a[%d] = %d",i,a[i]);
printf("n The Address of a[%d] = %u",i,&a[i]);
}
}
Illustration of the example:
2 3 7 9 10
a[0] a[1] a[2] a[3] a[4]
8724 8726 8728 8730 8732
Array
Value
Address
Output
The Value of a[0] = 2
The Address of a[0] = 8724
The Value of a[1] = 3
The Address of a[1] = 8726
The Value of a[2] = 7
The Address of a[2] = 8728
The Value of a[3] = 9
The Address of a[3] = 8730
The Value of a[4] = 10
The Address of a[4] = 8732
Example 3
#include<stdio.h>
#include<conio.h>
void main()
{
int a[5]={1,2,3,4,5};
int i,sum=0;
int *b;
b=a;
for(i=0;i<5;i++)
{
sum=sum + *b;
b++; //b=b+1
}
printf("n The Sum is %d",sum);
}
Output
The Sum is 15
Pointers and Structures
 Syntax:
struct structure_name
{
structure element1;
structure element2;
…………………….
}variable,*ptr;
 A sample code illustrating pointers and structure
struct stud
{
int sno;
char name[10];
int mark;
};
struct stud *s;
Example
#include<stdio.h>
#include<conio.h>
struct stud
{
int regno;
char name[10];
int m1;
int m2;
int m3;
};
struct stud s;
struct stud *t;
void main()
{
float tot,avg;
t=&s;
printf("nEnter the student regno,name,m1,m2,m3:");
scanf("%d%s%d%d%d",&s.regno,&s.name,&s.m1,&s.m2,&s.m3);
tot=s.m1+s.m2+s.m3;
avg=tot/3;
printf("nThe student Details are:");
printf("n%dt%st%ft%f",s.regno,s.name,tot,avg);
printf("n%dt%st%ft%f",t->regno,t->name,tot,avg);
}
Output
Enter the student regno,name,m1,m2,m3:1
aaa
76
89
76
The student Details are:
1 aaa 241.000000 80.333336
1 aaa 241.000000 80.333336
Functions and pointers_unit_4

More Related Content

What's hot

8 arrays and pointers
8  arrays and pointers8  arrays and pointers
8 arrays and pointers
MomenMostafa
 
4 operators, expressions &amp; statements
4  operators, expressions &amp; statements4  operators, expressions &amp; statements
4 operators, expressions &amp; statements
MomenMostafa
 
lets play with "c"..!!! :):)
lets play with "c"..!!! :):)lets play with "c"..!!! :):)
lets play with "c"..!!! :):)
Rupendra Choudhary
 
Functions in c
Functions in cFunctions in c
Functions in c
Innovative
 
Fucntions & Pointers in C
Fucntions & Pointers in CFucntions & Pointers in C
Fucntions & Pointers in C
Janani Satheshkumar
 
Functions in C
Functions in CFunctions in C
Functions in C
Princy Nelson
 
C function
C functionC function
C function
thirumalaikumar3
 
Programming Fundamentals Arrays and Strings
Programming Fundamentals   Arrays and Strings Programming Fundamentals   Arrays and Strings
Programming Fundamentals Arrays and Strings
imtiazalijoono
 
C interview question answer 2
C interview question answer 2C interview question answer 2
C interview question answer 2Amit Kapoor
 
Core programming in c
Core programming in cCore programming in c
Core programming in c
Rahul Pandit
 
9 character string &amp; string library
9  character string &amp; string library9  character string &amp; string library
9 character string &amp; string library
MomenMostafa
 
Function in c program
Function in c programFunction in c program
Function in c program
CGC Technical campus,Mohali
 
C Programming
C ProgrammingC Programming
C Programming
Sumant Diwakar
 
C Programming Language Part 9
C Programming Language Part 9C Programming Language Part 9
C Programming Language Part 9
Rumman Ansari
 
1 introducing c language
1  introducing c language1  introducing c language
1 introducing c language
MomenMostafa
 
Function & Recursion in C
Function & Recursion in CFunction & Recursion in C
Function & Recursion in C
Aditya Nihal Kumar Singh
 
46630497 fun-pointer-1
46630497 fun-pointer-146630497 fun-pointer-1
46630497 fun-pointer-1
AmIt Prasad
 
CHAPTER 6
CHAPTER 6CHAPTER 6
CHAPTER 6
mohd_mizan
 
Function in c
Function in cFunction in c
C Programming Language Step by Step Part 2
C Programming Language Step by Step Part 2C Programming Language Step by Step Part 2
C Programming Language Step by Step Part 2
Rumman Ansari
 

What's hot (20)

8 arrays and pointers
8  arrays and pointers8  arrays and pointers
8 arrays and pointers
 
4 operators, expressions &amp; statements
4  operators, expressions &amp; statements4  operators, expressions &amp; statements
4 operators, expressions &amp; statements
 
lets play with "c"..!!! :):)
lets play with "c"..!!! :):)lets play with "c"..!!! :):)
lets play with "c"..!!! :):)
 
Functions in c
Functions in cFunctions in c
Functions in c
 
Fucntions & Pointers in C
Fucntions & Pointers in CFucntions & Pointers in C
Fucntions & Pointers in C
 
Functions in C
Functions in CFunctions in C
Functions in C
 
C function
C functionC function
C function
 
Programming Fundamentals Arrays and Strings
Programming Fundamentals   Arrays and Strings Programming Fundamentals   Arrays and Strings
Programming Fundamentals Arrays and Strings
 
C interview question answer 2
C interview question answer 2C interview question answer 2
C interview question answer 2
 
Core programming in c
Core programming in cCore programming in c
Core programming in c
 
9 character string &amp; string library
9  character string &amp; string library9  character string &amp; string library
9 character string &amp; string library
 
Function in c program
Function in c programFunction in c program
Function in c program
 
C Programming
C ProgrammingC Programming
C Programming
 
C Programming Language Part 9
C Programming Language Part 9C Programming Language Part 9
C Programming Language Part 9
 
1 introducing c language
1  introducing c language1  introducing c language
1 introducing c language
 
Function & Recursion in C
Function & Recursion in CFunction & Recursion in C
Function & Recursion in C
 
46630497 fun-pointer-1
46630497 fun-pointer-146630497 fun-pointer-1
46630497 fun-pointer-1
 
CHAPTER 6
CHAPTER 6CHAPTER 6
CHAPTER 6
 
Function in c
Function in cFunction in c
Function in c
 
C Programming Language Step by Step Part 2
C Programming Language Step by Step Part 2C Programming Language Step by Step Part 2
C Programming Language Step by Step Part 2
 

Similar to Functions and pointers_unit_4

Function in c program
Function in c programFunction in c program
Function in c program
umesh patil
 
Fundamentals of functions in C program.pptx
Fundamentals of functions in C program.pptxFundamentals of functions in C program.pptx
Fundamentals of functions in C program.pptx
Chandrakant Divate
 
cp Module4(1)
cp Module4(1)cp Module4(1)
cp Module4(1)
Amarjith C K
 
Functions struct&union
Functions struct&unionFunctions struct&union
Functions struct&union
UMA PARAMESWARI
 
Functionincprogram
FunctionincprogramFunctionincprogram
Functionincprogram
Sampath Kumar
 
Array Cont
Array ContArray Cont
unit_2 (1).pptx
unit_2 (1).pptxunit_2 (1).pptx
unit_2 (1).pptx
JVenkateshGoud
 
Functions in C.pptx
Functions in C.pptxFunctions in C.pptx
Functions in C.pptx
KarthikSivagnanam2
 
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
SangeetaBorde3
 
Presentation on Function in C Programming
Presentation on Function in C ProgrammingPresentation on Function in C Programming
Presentation on Function in C Programming
Shuvongkor Barman
 
Unit_5Functionspptx__2022_12_27_10_47_17 (1).pptx
Unit_5Functionspptx__2022_12_27_10_47_17 (1).pptxUnit_5Functionspptx__2022_12_27_10_47_17 (1).pptx
Unit_5Functionspptx__2022_12_27_10_47_17 (1).pptx
vekariyakashyap
 
Function
FunctionFunction
Function
mshoaib15
 
unit_2.pptx
unit_2.pptxunit_2.pptx
unit_2.pptx
Venkatesh Goud
 
eee2-day4-structures engineering college
eee2-day4-structures engineering collegeeee2-day4-structures engineering college
eee2-day4-structures engineering college
2017eee0459
 
Dti2143 chapter 5
Dti2143 chapter 5Dti2143 chapter 5
Dti2143 chapter 5alish sha
 
C Programming Language Part 7
C Programming Language Part 7C Programming Language Part 7
C Programming Language Part 7
Rumman Ansari
 
Functions.pptx, programming language in c
Functions.pptx, programming language in cFunctions.pptx, programming language in c
Functions.pptx, programming language in c
floraaluoch3
 

Similar to Functions and pointers_unit_4 (20)

Function in c program
Function in c programFunction in c program
Function in c program
 
Fundamentals of functions in C program.pptx
Fundamentals of functions in C program.pptxFundamentals of functions in C program.pptx
Fundamentals of functions in C program.pptx
 
cp Module4(1)
cp Module4(1)cp Module4(1)
cp Module4(1)
 
Functions struct&union
Functions struct&unionFunctions struct&union
Functions struct&union
 
Functionincprogram
FunctionincprogramFunctionincprogram
Functionincprogram
 
Function in C program
Function in C programFunction in C program
Function in C program
 
Array Cont
Array ContArray Cont
Array Cont
 
Function in c
Function in cFunction in c
Function in c
 
unit_2 (1).pptx
unit_2 (1).pptxunit_2 (1).pptx
unit_2 (1).pptx
 
Functions in C.pptx
Functions in C.pptxFunctions in C.pptx
Functions in C.pptx
 
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
 
Presentation on Function in C Programming
Presentation on Function in C ProgrammingPresentation on Function in C Programming
Presentation on Function in C Programming
 
Unit_5Functionspptx__2022_12_27_10_47_17 (1).pptx
Unit_5Functionspptx__2022_12_27_10_47_17 (1).pptxUnit_5Functionspptx__2022_12_27_10_47_17 (1).pptx
Unit_5Functionspptx__2022_12_27_10_47_17 (1).pptx
 
Function
FunctionFunction
Function
 
unit_2.pptx
unit_2.pptxunit_2.pptx
unit_2.pptx
 
eee2-day4-structures engineering college
eee2-day4-structures engineering collegeeee2-day4-structures engineering college
eee2-day4-structures engineering college
 
functions
functionsfunctions
functions
 
Dti2143 chapter 5
Dti2143 chapter 5Dti2143 chapter 5
Dti2143 chapter 5
 
C Programming Language Part 7
C Programming Language Part 7C Programming Language Part 7
C Programming Language Part 7
 
Functions.pptx, programming language in c
Functions.pptx, programming language in cFunctions.pptx, programming language in c
Functions.pptx, programming language in c
 

Recently uploaded

2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
Sandy Millin
 
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXXPhrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
MIRIAMSALINAS13
 
Palestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxPalestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptx
RaedMohamed3
 
The geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideasThe geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideas
GeoBlogs
 
Adversarial Attention Modeling for Multi-dimensional Emotion Regression.pdf
Adversarial Attention Modeling for Multi-dimensional Emotion Regression.pdfAdversarial Attention Modeling for Multi-dimensional Emotion Regression.pdf
Adversarial Attention Modeling for Multi-dimensional Emotion Regression.pdf
Po-Chuan Chen
 
The French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free downloadThe French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free download
Vivekanand Anglo Vedic Academy
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
DeeptiGupta154
 
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
Levi Shapiro
 
Sha'Carri Richardson Presentation 202345
Sha'Carri Richardson Presentation 202345Sha'Carri Richardson Presentation 202345
Sha'Carri Richardson Presentation 202345
beazzy04
 
Supporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptxSupporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptx
Jisc
 
Honest Reviews of Tim Han LMA Course Program.pptx
Honest Reviews of Tim Han LMA Course Program.pptxHonest Reviews of Tim Han LMA Course Program.pptx
Honest Reviews of Tim Han LMA Course Program.pptx
timhan337
 
Acetabularia Information For Class 9 .docx
Acetabularia Information For Class 9  .docxAcetabularia Information For Class 9  .docx
Acetabularia Information For Class 9 .docx
vaibhavrinwa19
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
Peter Windle
 
How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...
Jisc
 
Language Across the Curriculm LAC B.Ed.
Language Across the  Curriculm LAC B.Ed.Language Across the  Curriculm LAC B.Ed.
Language Across the Curriculm LAC B.Ed.
Atul Kumar Singh
 
Francesca Gottschalk - How can education support child empowerment.pptx
Francesca Gottschalk - How can education support child empowerment.pptxFrancesca Gottschalk - How can education support child empowerment.pptx
Francesca Gottschalk - How can education support child empowerment.pptx
EduSkills OECD
 
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup   New Member Orientation and Q&A (May 2024).pdfWelcome to TechSoup   New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
TechSoup
 
Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.
Ashokrao Mane college of Pharmacy Peth-Vadgaon
 
The Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptxThe Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptx
DhatriParmar
 
Instructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptxInstructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptx
Jheel Barad
 

Recently uploaded (20)

2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
 
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXXPhrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
 
Palestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxPalestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptx
 
The geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideasThe geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideas
 
Adversarial Attention Modeling for Multi-dimensional Emotion Regression.pdf
Adversarial Attention Modeling for Multi-dimensional Emotion Regression.pdfAdversarial Attention Modeling for Multi-dimensional Emotion Regression.pdf
Adversarial Attention Modeling for Multi-dimensional Emotion Regression.pdf
 
The French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free downloadThe French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free download
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
 
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
 
Sha'Carri Richardson Presentation 202345
Sha'Carri Richardson Presentation 202345Sha'Carri Richardson Presentation 202345
Sha'Carri Richardson Presentation 202345
 
Supporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptxSupporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptx
 
Honest Reviews of Tim Han LMA Course Program.pptx
Honest Reviews of Tim Han LMA Course Program.pptxHonest Reviews of Tim Han LMA Course Program.pptx
Honest Reviews of Tim Han LMA Course Program.pptx
 
Acetabularia Information For Class 9 .docx
Acetabularia Information For Class 9  .docxAcetabularia Information For Class 9  .docx
Acetabularia Information For Class 9 .docx
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
 
How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...
 
Language Across the Curriculm LAC B.Ed.
Language Across the  Curriculm LAC B.Ed.Language Across the  Curriculm LAC B.Ed.
Language Across the Curriculm LAC B.Ed.
 
Francesca Gottschalk - How can education support child empowerment.pptx
Francesca Gottschalk - How can education support child empowerment.pptxFrancesca Gottschalk - How can education support child empowerment.pptx
Francesca Gottschalk - How can education support child empowerment.pptx
 
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup   New Member Orientation and Q&A (May 2024).pdfWelcome to TechSoup   New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
 
Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.
 
The Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptxThe Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptx
 
Instructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptxInstructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptx
 

Functions and pointers_unit_4

  • 2. FUNCTION  A function is a group of statements that together perform a task. (or) A Function is a sub-program, which contains one or more statements and it performs some task when its called.  A computer program cannot handle all the tasks by itself. Instead its requests other program like entities – called functions in C to get its task done.
  • 3. Why we use functions?  Writing functions avoids rewriting the same code over and over.  Suppose that there is a section of code in a program that calculates area of a circle. If later in the program we want to calculate the area of a different circle, we wont like to write the same instructions again.  Instead, we would prefer to jump to a “section of code” that calculates area and then jump back to the place from where we left off.  This section of code is nothing but a function.
  • 4.  Using functions it becomes easier to write programs and keep track of what they are doing.  If the operation of a program can be divided in to separate activities, and each activity placed in a different function, then each could be written and checked more or less independently.  Separating the code in to modular functions also makes the pro-gram easier to design and understand. Why we use functions?
  • 5. TYPES  There are two different types of functions:  Pre-defined functions  User-defined functions
  • 6. Pre-Defined Functions  The pre-defined functions or library functions are built-in functions.  The user can use the functions, but cannot modify those functions.  Example: sqrt()
  • 7. User-Defined Functions  The functions defined by the user for their requirements are called user-defined functions.  Whenever it is needed, the user can modify this function.  Example: sum(a,b)
  • 8. Advantage of User-Defined Functions  The length of the source program can be reduced.  It is easy to locate errors.  It avoids coding of repeated instructions.
  • 9. Elements of User-Defined Function  Function declaration  Function definition  Function call #include <stdio.h> #include<conio.h> void main() { void add(void); //function declaration add(); //function call } void add() // function definition { int a,b,c; printf("nEnter two number:"); scanf("%d%d",&a,&b); c=a+b; printf("nSum is:%d",c); }
  • 10. Function  Syntax datatype function_name (parameters list) { local variable declaration; ………………………… body of the function; ………………………… return(expression); }
  • 11. How Function Works?  Once a function is called the control passes to the called function.  The working of calling function is temporarily stopped.  When the execution of called function is completed then the control returns back to the calling function and executes the next statement.
  • 12. Parameters  Actual Parameter These are the parameters which are transferred from the calling function to the called function.  Formal Parameter These are the parameters which are used in the called function. Parameter is variable in the declaration of function. Argument is the actual value of this variable that gets passed to function.
  • 13.
  • 14. return Statement  The return statement may or may not send some values to the calling function.  Syntax: return; (or) return (expression);
  • 15. Function Prototypes There are four types:  Function with no arguments and no return values.  Function with arguments and no return values.  Function with arguments and return values.  Function with no arguments and with return values. Argument is the actual value of the variable that gets passed to function.
  • 16. Function with no arguments and no return values  Here no data transfer takes place between the calling function and the called function.  These functions act independently, i.e. they get input and display output in the same block.
  • 17.
  • 18. Example #include <stdio.h> #include<conio.h> void main() //calling function { void add(void); add(); } void add() //called function { int a,b,c; printf("nEnter two number:"); scanf("%d%d",&a,&b); c=a+b; printf("nSum is:%d",c); }
  • 20. Function with arguments and no return values  Here data transfer take place between the calling function and the called function.  It is a one way data communication, i.e. the called program receives data from calling program but it does not return any value to the calling program.
  • 21.
  • 22. Example #include <stdio.h> #include<conio.h> void main() { int a,b; void add(int,int); printf("nEnter two number:"); scanf("%d%d",&a,&b); add(a,b); } void add(int x,int y) //function with arguments { int z; z=x+y; printf("nSum is:%d",z); }
  • 24. Function with arguments and return values  Here data transfer takes place between the calling function and the called function.  It is a two way data communication, i.e. the called program receives data from calling program and it returns some value to the calling program.
  • 25.
  • 26. Example #include <stdio.h> #include<conio.h> void main() { int a,b,c; int add(int,int); printf("nEnter two number:"); scanf("%d%d",&a,&b); c=add(a,b); printf("nSum is:%d",c); } int add(int x,int y) { int z; z=x+y; return(z); }
  • 28. Function with no arguments and with return values  Here data transfer takes place between the called function and the calling function.  It is a one way data communication, i.e. the called program does not any receive data from the calling program but it returns some value to the calling program.
  • 29.
  • 30. Example #include <stdio.h> #include<conio.h> void main() { int add(),d; d=add(); printf("nSum is:%d",d); } int add() //function with no argument { int a,b,c; printf("nEnter two number:"); scanf("%d%d",&a,&b); c=a+b; return(c); }
  • 32. Parameter Passing Methods  There are two different ways of passing parameters to a method, they are:  Call by value  Call by reference
  • 33. Call by value  Actual arguments are passed to the formal arguments.  Any changes made to the formal argument does not affect the actual argument.
  • 34. Example-swapping #include <stdio.h> #include<conio.h> void main() { int x,y; int swap(int,int); printf("nEnter value of x:"); scanf("%d",&x); printf("nEnter value of y:"); scanf("%d",&y); swap(x,y); printf("nnValues in the Main()-->x=%d,y=%d",x,y); } int swap(int a,int b) { int c; c=a; a=b; b=c; printf("nValues in the Fuction --> x=%d, y=%d",a,b); } Output:
  • 35. Call by reference  Instead of passing values, the address of the argument will be passed.  Any changes made to the formal argument will affect the actual argument.
  • 36. Example #include <stdio.h> #include<conio.h> void main() { int x,y; int swap(int*,int*); printf("nEnter value of x:"); scanf("%d",&x); printf("nEnter value of y:"); scanf("%d",&y); // address of x and y is passed to the swap function swap(&x,&y); printf("nnValues in the Main--> x=%d, y=%d",x, y); } //pointer a and b points to the address of x and y respectively. int swap(int *a, int *b) { int c; c=*a; *a=*b; *b=c; printf("nValues in the Function --> x=%d,y=%d",*a,*b); } output: Enter value of x:5 Enter value of y:6 Values in the Function -->x=6,y=5 Values in the Main-->x=6,y=5
  • 37.
  • 38. Recursion  It is a process of calling the same function itself again and again until some condition is satisfied. Syntax: func1() { ……….. func1(); ………… }
  • 39. Example #include<stdio.h> #include<conio.h> void main() { int a; int rec(int); printf("nEnter the number:"); scanf("%d",&a); printf("The factorial of %d! is %d",a,rec(a)); } int rec(int x) { int f; if(x==1) return(1); else f=x*rec(x-1); return(f); } Output: Enter the number:5 The factorial of 5! is 120
  • 41. Library Function  Library functions are the pre-defined functions.  The library function provides functions like mathematical, string manipulation etc,.  In order to use a library function, it is necessary to call the appropriate header file at the beginning of the program.  The header file informs the program of the name, type, and number and type of arguments, of all of the functions contained in the library in question.  A header file is called via the preprocessor statement.
  • 42. Some Examples of Library Functions  sqrt(x): It is used to find the square root of x Example: sqrt(36) is 6  abs(x): It is used to find the absolute value of x Example: abs(-36) is 36  pow(x,y): It is used to find the value of xy Example: pow(5,2) is 25
  • 43.  ceil(x): It is used to find the smallest integer greater than or equal to x. Example: ceil(7.7) is 8  rand(): It is used to generate a random number.  sin(x): It is used to find the sine value of x Example: sin(30) is 0.5  cos (x): It is used to find the cosine value of x Example: cos(30) is 0.86
  • 44.  tan(x): It is used to find the tan value of x Example: tan(30) is 0.577  toascii(x): It is used to find the ASCII value of x Example: toascii(a) is 97  toupper(x): It is used to convert lowercase character to uppercase. Example: toupper(‘a’) is A toupper(97) is A  tolower(x): It is used to convert uppercase character to lowercase. Example: tolower(‘A’) is a
  • 45. Example: #include<stdio.h> #include<conio.h> #include<math.h> #include<ctype.h> void main() { int x,y=2; printf("nEnter the number:"); scanf("%d",&x); printf("nThe square root of %d is %f",x,sqrt(x)); printf("nThe value of %d power%dis%f ",x,y,pow(6,2)); printf("nThe ceiling of 6.7 is %f",ceil(6.7)); printf("nThe floor of 6.7 is %f",floor(6.7));
  • 46. printf("nThe absolute value of -6 is %d",abs(-6)); printf("nThe value of sin 45 is %f",sin(45)); printf("nThe uppercase of 'a' is %c",toupper('a')); printf("nThe uppercase of 97 is %c",toupper(97)); getch(); }
  • 47. Output: Enter the number:6 The square root of 6 is 2.449490 The value of 6 power 2 is 36.000000 The ceiling of 6.7 is 7.000000 The floor of 6.7 is 6.000000 The absolute value of -6 is 6 The value of sin 45 is 0.850904 The uppercase of 'a' is A The uppercase of 97 is A
  • 48. Average of array Elements using user defined function
  • 49. To Find the length of the string with user defined function
  • 50. The Towers of Hanoi A Recursion Application  GIVEN: three poles  a set of discs on the first pole, discs of different sizes, the smallest discs at the top  GOAL: move all the discs from the left pole to the right one.  CONDITIONS: only one disc may be moved at a time.  A disc can be placed either on an empty pole or on top of a larger disc.
  • 51.
  • 60.
  • 61.
  • 62. Random number generation using recursion function #include <stdio.h> #include <stdlib.h> int main() { void random(void); int c, n; printf("Ten random numbers in [1,100]n"); for (c = 1; c <= 10; c++) { random(); } return 0; } void random() { int n; n = rand()%100 + 1; printf("%dn", n); }
  • 64. Pointers  Pointer is a variable that contains the address of another variable i.e.. direct address of the memory location.  Like any variable or constant, you must declare a pointer before you can use it to store any variable address.
  • 66. Example #include<stdio.h> #include<conio.h> void main() { int x=5; printf("n The Address of x = %u",&x); printf("n The Value of x = %d",x); } Output The Address of x = 8714 The Value of x = 5
  • 67. Pointer Declaration  Syntax: data-type *pointer-name; data-type - Type of the data to which the pointer points. pointer-name - Name of the pointer  Example: int *a;
  • 68. Accessing Variable through Pointer  If a pointer is declared and assigned to a variable, then the variable can be accessed through the pointer.  Example: int *a; x=5; a=&x;
  • 69. Example #include<stdio.h> #include<conio.h> void main() { int y=10; int *a; a=&y; printf("n The Value of y = %d",y); printf("n The Address of y = %u",&y); printf("n The Value of a = %d",a); printf("n The Address of a = %u",&a); }
  • 70. Illustration of the example: 5001 10 8000 a y 5001 Variable Value Address
  • 71. Output The Value of y = 10 The Address of y = 5001 The Value of a = 5001 The Address of a = 8000
  • 72. Null Pointer  A pointer is said to be null pointer if zero is assigned to the pointer.  For Example: int *a,*b; a=b=0;
  • 73. Pointer to Pointer  Here one pointer stores the address of another pointer variable.  Example: int x=10,*a,**b; a=&x; b=&a;
  • 74.  Illustration: 5001 10 8000 a x 5001 Variable Value Address 8000 9000 b
  • 75. Output: The Value of a[0] = 2 The Address of a[0] = 6356736 The Value of a[0] = 3 The Address of a[0] = 6356740 The Value of a[0] = 7 The Address of a[0] = 6356744 The Value of b = 6356736
  • 76. Example #include<stdio.h> #include<conio.h> void main() { int a=10; int *b,**c; b=&a; c=&b; printf("n The Value of a = %d",a); printf("n The Address of a = %u",&a); printf("n The Value of b = %d",b); printf("n The Address of b = %u",&b); printf("n The Value of c = %d",c); printf("n The Address of c = %u",&c); }
  • 77. Output The Value of a = 10 The Address of a = 5001 The Value of b = 5001 The Address of b = 8000 The Value of c = 8000 The Address of c = 9000
  • 78. #include<stdio.h> #include<conio.h> void main() { int a=10; int *b,**c; b=&a; c=&b; printf("n The Value of a = %d",a); printf("n The Address of a = %u",&a); printf("n The Value of b = %d",b); printf("n The Address of b = %u",&b); printf("n The Value of c = %d",c); printf("n The Address of c = %u",&c); printf("n The value of b = %d",*b); printf("n The value of c = %d",*c); printf("n The value c = %d",**c); } output: The Value of a = 10 The Address of a = 6356748 The Value of b = 6356748 The Address of b = 6356744 The Value of c = 6356744 The Address of c = 6356740 The Address of b = 10 The Address of c = 6356748 The Address of c = 10
  • 79. Output: The Value of a = 10 The Address of a = 6356748 The Value of b = 6356748 The Address of b = 6356744 The Value of c = 6356744 The Address of c = 6356740 The Address of b = 10 The Address of c = 6356748 The Address of c = 10
  • 80. Pointers and Arrays  The elements of the array can also be accessed through a pointer.  Example int a[3]={2,3,7}; int *b; b=a;
  • 81. Example 1 #include<stdio.h> #include<conio.h> void main() { int a[3]={2,3,7}; int *b; b=a; or b=&a; printf("n The Value of a[0] = %d",a[0]); printf("n The Address of a[0] = %u",&a[0]); printf("n The Value of b = %d",b); }
  • 82.  Illustration of the example: 8744 2 9000 b a[0] 8744 Variable Value Address
  • 83. Output The Value of a[0] = 2 The Address of a[0] = 8744 The Value of b = 8744
  • 84. #include<stdio.h> #include<conio.h> void main() { int a[3]={2,3,7}; int *b; b=&a; printf("n The Value of a[0] = %d",a[0]); printf("n The Address of a[0] = %u",&a[0]); printf("n The Value of a[0] = %d",a[1]); printf("n The Address of a[0] = %u",&a[1]); printf("n The Value of a[0] = %d",a[2]); printf("n The Address of a[0] = %u",&a[2]); printf("n The Value of b = %d",b); }
  • 85. Output: The Value of a[0] = 2 The Address of a[0] = 6356736 The Value of a[0] = 3 The Address of a[0] = 6356740 The Value of a[0] = 7 The Address of a[0] = 6356744 The Value of b = 6356736
  • 86. Example 2 #include<stdio.h> #include<conio.h> void main() { int a[5]={2,3,7,9,10}; int i; for(i=0;i<5;i++) { printf("n The Value of a[%d] = %d",i,a[i]); printf("n The Address of a[%d] = %u",i,&a[i]); } }
  • 87. Illustration of the example: 2 3 7 9 10 a[0] a[1] a[2] a[3] a[4] 8724 8726 8728 8730 8732 Array Value Address
  • 88. Output The Value of a[0] = 2 The Address of a[0] = 8724 The Value of a[1] = 3 The Address of a[1] = 8726 The Value of a[2] = 7 The Address of a[2] = 8728 The Value of a[3] = 9 The Address of a[3] = 8730 The Value of a[4] = 10 The Address of a[4] = 8732
  • 89. Example 3 #include<stdio.h> #include<conio.h> void main() { int a[5]={1,2,3,4,5}; int i,sum=0; int *b; b=a; for(i=0;i<5;i++) { sum=sum + *b; b++; //b=b+1 } printf("n The Sum is %d",sum); }
  • 91. Pointers and Structures  Syntax: struct structure_name { structure element1; structure element2; ……………………. }variable,*ptr;
  • 92.  A sample code illustrating pointers and structure struct stud { int sno; char name[10]; int mark; }; struct stud *s;
  • 93. Example #include<stdio.h> #include<conio.h> struct stud { int regno; char name[10]; int m1; int m2; int m3; }; struct stud s; struct stud *t;
  • 94. void main() { float tot,avg; t=&s; printf("nEnter the student regno,name,m1,m2,m3:"); scanf("%d%s%d%d%d",&s.regno,&s.name,&s.m1,&s.m2,&s.m3); tot=s.m1+s.m2+s.m3; avg=tot/3; printf("nThe student Details are:"); printf("n%dt%st%ft%f",s.regno,s.name,tot,avg); printf("n%dt%st%ft%f",t->regno,t->name,tot,avg); }
  • 95. Output Enter the student regno,name,m1,m2,m3:1 aaa 76 89 76 The student Details are: 1 aaa 241.000000 80.333336 1 aaa 241.000000 80.333336