0% found this document useful (0 votes)
13 views10 pages

Array Operations 11

The document provides a comprehensive overview of basic array operations in C programming, including traversal, insertion, deletion, linear search, binary search, and bubble sort. Each operation is accompanied by a C program that demonstrates its implementation. Additionally, a menu-driven program is included to allow users to perform various array operations interactively.

Uploaded by

Kalyani Ghadge
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views10 pages

Array Operations 11

The document provides a comprehensive overview of basic array operations in C programming, including traversal, insertion, deletion, linear search, binary search, and bubble sort. Each operation is accompanied by a C program that demonstrates its implementation. Additionally, a menu-driven program is included to allow users to perform various array operations interactively.

Uploaded by

Kalyani Ghadge
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

1.

Array Traversal
Definition:
Traversal means visiting each element of the array one by one.

C Program
#include <stdio.h>

int main()
{
int a[100], n, i;

printf("Enter number of elements: ");


scanf("%d",&n);

printf("Enter elements:\n");
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}

printf("Array elements are:\n");


for(i=0;i<n;i++)
{
printf("%d ",a[i]);
}

return 0;
}

2. Array Insertion
Definition:
Insertion means adding a new element at a specified position in the array.

C Program
#include <stdio.h>

int main()
{
int a[100], n, i, pos, element;

printf("Enter number of elements: ");


scanf("%d",&n);

printf("Enter elements:\n");
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}

printf("Enter position to insert: ");


scanf("%d",&pos);

printf("Enter element: ");


scanf("%d",&element);

for(i=n;i>=pos;i--)
{
a[i]=a[i-1];
}

a[pos-1]=element;
n++;

printf("Array after insertion:\n");


for(i=0;i<n;i++)
{
printf("%d ",a[i]);
}

return 0;
}

3. Array Deletion
Definition:
Deletion means removing an element from a given position.

C Program
#include <stdio.h>

int main()
{
int a[100], n, i, pos;

printf("Enter number of elements: ");


scanf("%d",&n);

printf("Enter elements:\n");
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}

printf("Enter position to delete: ");


scanf("%d",&pos);

for(i=pos-1;i<n-1;i++)
{
a[i]=a[i+1];
}

n--;

printf("Array after deletion:\n");


for(i=0;i<n;i++)
{
printf("%d ",a[i]);
}

return 0;
}

4. Linear Search
Definition:
Linear search checks each element sequentially until the element is found.

C Program
#include <stdio.h>

int main()
{
int a[100], n, i, key, found=0;

printf("Enter number of elements: ");


scanf("%d",&n);

printf("Enter elements:\n");
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}

printf("Enter element to search: ");


scanf("%d",&key);

for(i=0;i<n;i++)
{
if(a[i]==key)
{
printf("Element found at position %d",i+1);
found=1;
break;
}
}

if(found==0)
{
printf("Element not found");
}

return 0;
}
5. Binary Search
Definition:
Binary search works only on sorted arrays and repeatedly divides the array into halves.

C Program
#include <stdio.h>

int main()
{
int a[100], n, i, key, low, high, mid, found=0;

printf("Enter number of elements: ");


scanf("%d",&n);

printf("Enter sorted elements:\n");


for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}

printf("Enter element to search: ");


scanf("%d",&key);

low=0;
high=n-1;

while(low<=high)
{
mid=(low+high)/2;

if(a[mid]==key)
{
printf("Element found at position %d",mid+1);
found=1;
break;
}
else if(key<a[mid])
{
high=mid-1;
}
else
{
low=mid+1;
}
}

if(found==0)
{
printf("Element not found");
}

return 0;
}
6. Bubble Sort
Definition:
Bubble sort repeatedly compares adjacent elements and swaps them if they are in the wrong
order.

C Program
#include <stdio.h>

int main()
{
int a[100], n, i, j, temp;

printf("Enter number of elements: ");


scanf("%d",&n);

printf("Enter elements:\n");
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}

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("Sorted array:\n");
for(i=0;i<n;i++)
{
printf("%d ",a[i]);
}

return 0;
}

Menu Driven Program for Array Operation’s


#include <stdio.h>

int a[100], n = 0, i;

void create()
{
printf("Enter number of elements: ");
scanf("%d", &n);

printf("Enter elements:\n");
for(i = 0; i < n; i++)
scanf("%d", &a[i]);
}

void display()
{
printf("Array elements are:\n");
for(i = 0; i < n; i++)
printf("%d ", a[i]);

printf("\nBackward Traversal:\n");
for(i = n - 1; i >= 0; i--)
printf("%d ", a[i]);

printf("\n");
}

void insert()
{
int pos, element;

printf("Enter position: ");


scanf("%d", &pos);

if(pos < 1 || pos > n + 1)


{
printf("Invalid position\n");
return;
}

printf("Enter element: ");


scanf("%d", &element);
for(i = n; i >= pos; i--)
a[i] = a[i - 1];

a[pos - 1] = element;
n++;

printf("Element inserted.\n");
}

void delete_element()
{
int pos;

printf("Enter position to delete: ");


scanf("%d", &pos);

if(pos < 1 || pos > n)


{
printf("Invalid position\n");
return;
}

for(i = pos - 1; i < n - 1; i++)


a[i] = a[i + 1];

n--;

printf("Element deleted.\n");
}

void linear_search()
{
int key, found = 0;

printf("Enter element to search: ");


scanf("%d", &key);

for(i = 0; i < n; i++)


{
if(a[i] == key)
{
printf("Element found at position %d\n", i + 1);
found = 1;
break;
}
}

if(found == 0)
printf("Element not found\n");
}

void bubble_sort()
{
int 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("Array sorted.\n");
}

void binary_search()
{
int key, low = 0, high = n - 1, mid;

printf("Enter element to search: ");


scanf("%d", &key);

while(low <= high)


{
mid = (low + high) / 2;

if(a[mid] == key)
{
printf("Element found at position %d\n", mid + 1);
return;
}
else if(key < a[mid])
high = mid - 1;
else
low = mid + 1;
}

printf("Element not found\n");


}

int main()
{
int choice;

while(1)
{
printf("\n--- ARRAY OPERATIONS MENU ---\n");
printf("1. Create Array\n");
printf("2. Display Array\n");
printf("3. Insert Element\n");
printf("4. Delete Element\n");
printf("5. Linear Search\n");
printf("6. Bubble Sort\n");
printf("7. Binary Search\n");
printf("8. Exit\n");

printf("Enter your choice: ");


scanf("%d", &choice);

switch(choice)
{
case 1: create(); break;
case 2: display(); break;
case 3: insert(); break;
case 4: delete_element(); break;
case 5: linear_search(); break;
case 6: bubble_sort(); break;
case 7: binary_search(); break;
case 8: return 0;
default: printf("Invalid choice\n");
}
}
}

You might also like