1. Program to add two number using pointer.
#include<stdio.h>
#include<conio.h>
void main()
{
int *ptr,a,b,c;
int *ptr1,*ptr2,*ptr3; :::: *=value at address ::: &= address of operator
printf("Enter the value of a and b\n");
scanf("%d %d",&a,&b);
ptr1=&a;
ptr2=&b;
ptr3=&c;
*ptr3= *ptr1 + *ptr2;
printf("The sum is %d" ,*ptr3);
getch();
}
2. Void Pointer: It can hold address of variable of any type.
eg:
#include<stdio.h>
#include<conio.h>
void main()
{
int x;
float y;
void *ptr;
ptr=&x;
printf("Enter the value of x and y\n");
scanf("%d %f",&x,&y);
printf("Value printed by ptr is %d\n",*(int *)ptr);
ptr=&y;
printf("value printed by ptr is %f\n",*(float *)ptr);
getch();
}
Output:

3. Subtraction of pointer from pointer
#include<stdio.h>
#include<conio.h>
void main()
{
int a[5]={1,2,3,4,5};
int *ptr1,*ptr2;
ptr1=&a[10];
ptr2=&a[4];
printf("The difference is %d",ptr2-ptr1);
getch();
}
Output:

Here the address is subtracted ie a[4] -a[10] = -6.
4. Comparision of pointer and pointer
#include<stdio.h>
#include<conio.h>
void main()
{
int a[5]={1,2,3,4,5};
int *ptr1,*ptr2;
ptr1=&a[10];
ptr2=&a[5];
if(ptr1==ptr2)
{
printf("Both pointer are pointing to same value");
}
else
{
printf("Both pointers are not pointing to same value");
}
getch();
}
Output:

Also if
#include<stdio.h>
#include<conio.h>
void main()
{
int a[5]={1,2,3,4,5};
int *ptr1,*ptr2;
ptr1=&a[10];
ptr2=&a[10[;
if(ptr1==ptr2)
{
printf("Both pointer are pointing to same value");
}
else
{
printf("Both pointers are not pointing to same value");
}
getch();
}
5. Program to input an element in an array and display it using pointer.
#include<stdio.h>
#include<conio.h>
void main()
{
int a[5],i,n;
int *ptr=&a[0];
printf("Enter the size of array\n");
scanf("%d",&n);
printf("Enter data elements\n");
for(i=0;i<n;i++)
{
scanf("%d",(ptr+i));
}
printf("The array elements are\n");
for(i=0;i<n;i++)
{
printf("%d\t",*(ptr+i));
}
getch();
}
6. Program to input an element in an array and display it and find sum of all elements using pointer.
#include<stdio.h>
#include<conio.h>
void main()
{
int a[5],i,n,sum=0;
int *ptr=&a[0];
printf("Enter the size of array\n");
scanf("%d",&n);
printf("Enter data elements\n");
for(i=0;i<n;i++)
{
scanf("%d",(ptr+i));
}
printf("The array elements are\n");
for(i=0;i<n;i++)
{
printf("%d\t",*(ptr+i));
}
for(i=0;i<n;i++)
{
sum+ =
*(ptr+i);
}
printf("The sum of all element is %d",sum);
getch();
}
Output:
7.Program to input n element and display it and find maximum,minimum and average value using pointer.
#include<stdio.h>
#include<conio.h>
int main()
{
int a[5],i,n,maximum,minimum,sum=0;
float average;
int *ptr=&a[0];
printf("Enter the size of array\n");
scanf("%d",&n);
printf("Enter data elements\n");
for(i=0;i<n;i++)
{
scanf("%d",(ptr+i));
}
printf("The array elements are\n");
for(i=0;i<n;i++)
{
printf("%d\t",*(ptr+i));
}
maximum=*ptr;
minimum=*ptr;
for(i=0;i<n;i++)
{
if(*(ptr+i)>maximum)
{
maximum=*(ptr+i);
}
if(*(ptr+i)<minimum)
{
minimum=*(ptr+i);
}
sum+=*(ptr+i);
}
average=sum/n;
printf("The maximum and minimum is %d %d\n",maximum,minimum);
printf("The average value is %f",average);
getch();
}
Output:
8. Program to input n element in an array and check if it is present or not in array using pointer.
#include<stdio.h>
#include<conio.h>
int main()
{
int a[100],i,n,flag=0;
int *ptr=&a[0];
printf("Enter the size of array\n");
scanf("%d",&n);
printf("Enter data elements\n");
for(i=0;i<n;i++)
{
scanf("%d",(ptr+i));
}
printf("The array elements are\n");
for(i=0;i<n;i++)
{
printf("%d\t",*(ptr+i));
}
if(n==*(ptr+i))
{
flag=1;
}
if(flag==1)
{
printf("Number is present");
}
else
{
printf("Number is not present");
}
getch();
}
Output:
9. Sorting in ascending order
#include<stdio.h>
#include<conio.h>
int main()
{
int a[100],i,j,n,temp;
int *ptr=&a[0];
printf("Enter the size of array\n");
scanf("%d",&n);
printf("Enter data elements\n");
for(i=0;i<n;i++)
{
scanf("%d",(ptr+i));
}
printf("The array elements are\n");
for(i=0;i<n;i++)
{
printf("%d\t",*(ptr+i));
}
for(i=0;i<n-2;i++)
{
for(j=0;j<=n-2-i;j++)
{
if(*(ptr+j)>*((ptr+j)+1))
{
temp= *(ptr+j);
*(ptr+j)=*((ptr+j)+1);
*((ptr+j)+1)= temp;
}
}
}
printf("The sorted away is\n");
for(i=0;i<n;i++)
{
printf("%d\t",*(ptr+i));
}
getch();
}
Output:
Comments
Post a Comment