#include<stdio.
h>
#include<stdlib.h>
void read_array(int a[],int n);
void insert_front_s(int a[],int n,int ele);
void insert_front_u(int a[],int n,int ele);
void insert_end_s_u(int a[],int n,int ele);
void print_array(int a[],int n);
void insert_any_pos_s(int a[],int n,int ele,int p);
void insert_any_pos_u(int a[],int n,int ele,int p);
void delete_front_s(int a[],int n);
void delete_front_u(int a[],int n);
void delete_any_pos_s(int a[],int n,int p);
void delete_any_pos_u(int a[],int n,int p);
void delete_end_s_u(int a[],int n);
void bubble_sort(int a[],int n);
void linear_search(int a[],int n,int se);
void binary_search(int a[],int n,int se);
void merge_two_array(int a[],int n,int b[],int m);
void reverse_array(int a[],int n);
void large_slarge(int a[],int n);
void small_ssmall(int a[],int n);
void remove_dup(int a[],int n);
void sum_array_ele(int a[],int n);
int main()
//using ch for storing case number
//using b array for second array for merging it further as a+b
//n-for a array size m-b array size p-position
int a[10],n,ele,i,p,b[10],m;
int ch;
//giving array size of A array
printf("Enter A array size:");
scanf("%d",&n);
printf("Enter A Array elements:");
//storing the elements in array by calling function
read_array(a,n);
while(1)
printf("\n****Array Operations****\n");
printf("[Link] Front sorted\[Link] Front unsorted\[Link] End sorted and unsorted\n");
printf("[Link] any position sorted\[Link] any position unsorted\n");
printf("[Link] front sorted\[Link] front unsorted\[Link] front any position sorted\n");
printf("[Link] front any position unsorted\[Link] End sorted and unsorted\n");
printf("[Link] sorting\[Link] search\[Link] search\n);
printf(“[Link] two array\[Link] Array\n”);
printf(“[Link] and second largest element in array\n");
printf("[Link] and second smallest element in array\n”);
printf(“[Link] duplicates in an array\[Link] of array elements\[Link]\n");
printf("Enter operation number:");//case number
scanf("%d",&ch);
switch(ch)
case 1:printf("Enter inserting element:");
scanf("%d",&ele);
insert_front_s(a,n,ele);
break;
case 2:printf("Enter inserting element:");
scanf("%d",&ele);
insert_front_u(a,n,ele);
break;
case 3:printf("Enter inserting element:");
scanf("%d",&ele);
insert_end_s_u(a,n,ele);
break;
case 4:printf("Enter inserting element:");
scanf("%d",&ele);
printf("Enter the position:");
scanf("%d",&p);
if(p-1>=0&&p<n)
insert_any_pos_s(a,n,ele,p);
else
printf("Entered position is Invalid....");
break;
case 5:printf("Enter inserting element:");
scanf("%d",&ele);
printf("Enter the position:");
scanf("%d",&p);
if(p-1>=0&&p<n)
insert_any_pos_u(a,n,ele,p);
else
printf("Entered position is Invalid....");
break;
case 6:delete_front_s(a,n);
break;
case 7:delete_front_u(a,n);
break;
case 8:printf("Enter the position:");
scanf("%d",&p);
if(p-1>=0&&p<n)
delete_any_pos_s(a,n,p);
else
printf("Entered position is Invalid....");
break;
case 9:printf("Enter the position:");
scanf("%d",&p);
if(p-1>=0&&p<n)
delete_any_pos_u(a,n,p);
else
printf("Entered position is Invalid....");
break;
case 10:delete_end_s_u(a,n);
break;
case 11:bubble_sort(a,n);
break;
case 12:printf("Enter the search element:");
scanf("%d",&ele);
linear_search(a,n,ele);
break;
case 13:printf("Enter the search element:");
scanf("%d",&ele);
binary_search(a,n,ele);
break;
case 14:printf("Enter B array size:");
scanf("%d",&m);
printf("Enter B Array elements:");
read_array(b,m);
merge_two_array(a,n,b,m);
break;
case 15:reverse_array(a,n);
break;
case 16:large_slarge(a,n);
break;
case 17:small_ssmall(a,n);
break;
case 18:remove_dup(a,n);
break;
case 19:sum_array_ele(a,n);
break;
case 20:exit(0);
default:printf("Invalid case.....\n");
void read_array(int a[],int n)
int i;
for(i=0;i<n;i++)
scanf("%d",&a[i]);
void print_array(int a[],int n)
int i;
for(i=0;i<n;i++)
printf("%d\t",a[i]);
void insert_front_s(int a[],int n,int ele)
int i;
for(i=n-1;i>=0;i--)
a[i+1]=a[i];
a[0]=ele;
n=n+1;
printf("After inserting in front of array sorted: ");
print_array(a,n);
}
void insert_front_u(int a[],int n,int ele)
a[n]=a[0];
a[0]=ele;
n=n+1;
printf("After inserting in front of array unsorted: ");
print_array(a,n);
void insert_end_s_u(int a[],int n,int ele)
a[n]=ele;
n=n+1;
printf("After inserting in End of array: ");
print_array(a,n);
void insert_any_pos_s(int a[],int n,int ele,int p)
int i;
for(i=n-1;i>=p-1;i--)
a[i+1]=a[i];
a[p-1]=ele;
n=n+1;
printf("After inserting in %d position sorted: ",p);
print_array(a,n);
void insert_any_pos_u(int a[],int n,int ele,int p)
a[n]=a[p-1];
a[p-1]=ele;
n=n+1;
printf("After inserting in %d position sorted: ",p);
print_array(a,n);
void delete_front_s(int a[],int n)
int i;
for(i=0;i<n;i++)
a[i]=a[i+1];
a[n-1]=0;
n=n-1;
printf("After deleting front sorted: ");
print_array(a,n);
void delete_front_u(int a[],int n)
a[0]=a[n-1];
a[n-1]=0;
n=n-1;
printf("After deleting front unsorted: ");
print_array(a,n);
void delete_any_pos_s(int a[],int n,int p)
int i;
for(i=p-1;i<n;i++)
a[i]=a[i+1];
a[n-1]=0;
n=n-1;
printf("After deleting %d position sorted: ",p);
print_array(a,n);
void delete_any_pos_u(int a[],int n,int p)
{
a[p-1]=a[n-1];
a[n-1]=0;
n=n-1;
printf("After deleting %d position unsorted: ",p);
print_array(a,n);
void delete_end_s_u(int a[],int n)
a[n-1]=0;
n=n-1;
printf("After deleting End Sorted and Unsorted: ");
print_array(a,n);
void bubble_sort(int a[],int n)
int i,j,temp;
for(i=0;i<n-1;i++)
for(j=0;j<n-i-1;j++)
if(a[j]>a[j+1])
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
printf("After Sorting the given list: ");
print_array(a,n);
}
void linear_search(int a[],int n,int se)
int i,flag=0;
for(i=0;i<n;i++)
if(se==a[i])
flag=1;
break;
if(flag==1)
printf("Search element %d found in %dth index",se,i);
else
printf("Search element %d not found",se);
void binary_search(int a[],int n,int se)
bubble_sort(a,n);
int l=0,h=n-1,m;
m=(l+h)/2;
while(l<=h)
if(se==a[m])
printf("\nSearch element %d found in %dth index",se,m);
break;
else if(se<a[m])
h=m-1;
else
l=m+1;
m=(l+h)/2;
if(l>h)
printf("Search element %d not found in list.....",se);
void merge_two_array(int a[],int n,int b[],int m)
int i,p,c[40],j;
p=n+m;
for(i=0;i<n;i++)
c[i]=a[i];
for(j=0;j<m;j++)
c[i+j]=b[j];
printf("After Merging A and B array: ");
print_array(c,p);
void reverse_array(int a[],int n)
int l=0,h=n-1,temp;
while(l<h)
temp=a[h];
a[h]=a[l];
a[l]=temp;
l++;
h--;
printf("After reversing Array: ");
print_array(a,n);
void large_slarge(int a[],int n)
int i,l,s_l,temp;
l=a[0];
s_l=a[1];
if(l<s_l)
temp=s_l;
s_l=l;
l=temp;
for(i=2;i<n;i++)
if(a[i]>l)
s_l=l;
l=a[i];
else if(a[i]>s_l&&a[i]!=l)
s_l=a[i];
printf("Largest number in the given list is:%d\n",l);
printf("Second largest number in the given list is:%d\n",s_l);
void small_ssmall(int a[],int n)
int i,s,s_s,temp;
s=a[0];
s_s=a[1];
if(s>s_s)
temp=s_s;
s_s=s;
s=temp;
for(i=2;i<n;i++)
if(a[i]<s)
s_s=s;
s=a[i];
else if(a[i]<s_s&&a[i]!=s)
s_s=a[i];
printf("Smallest number in the given list is:%d\n",s);
printf("Second Smallest number in the given list is:%d\n",s_s);
void remove_dup(int a[],int n)
int i,j,k,flag=0;
for(i=0;i<n;i++)
for(j=i+1;j<n;j++)
if(a[i]==a[j])
flag=1;
for(k=j;k<n;k++)
a[k]=a[k+1];
j--;
n=n-1;
if(flag==1)
printf("After removing duplicates in the Array:");
print_array(a,n);
else
printf("There are no duplicates in the given array\n");
void sum_array_ele(int a[],int n)
int sum=0,i;
for(i=0;i<n;i++)
sum=sum+a[i];
printf("The sum of the elements in the given array is:%d",sum);
}
OUTPUT OF MENU