# C program to implement binary search

In this tutorial, we will learn how to write a C program to implement a binary search algorithm? By IncludeHelp Last updated : August 10, 2023

Binary Searching is a half–interval searching algorithm in which an element can be searched in a sorted array with the minimum number of comparisons, in this algorithm key element compares with the middle index item.

## Problem statement

Input an array of integers, and write a C program to implement a binary search to find an element from the given array.

## C program to implement binary search

```/*
program to implement Binary Searching,
to find an element in array.
*/

#include <stdio.h>

/*function    : BinaryrSearch() */

int BinaryrSearch(int x[], int n, int item)
{
int L = 0; /*LOWER LIMIT   */
int U = n - 1; /*UPPER LIMIT   */
int mid; /*MIDDLE INDEX  */

while (L < U) {
mid = (L + U) / 2;
if (x[mid] == item)
return mid;
else if (x[mid] < item)
L = mid + 1;
else if (x[mid] > item)
U = mid - 1;
}
return -1;
}

int main()
{
int num = 0, pos = 0;

int ar[10], i;

printf("\nEnter array elements (in ASC Order...):\n");
for (i = 0; i < 10; i++) {
printf("Enter element %02d :", i + 1);
scanf("%d", &ar[i]);
}

printf("\nEnter element to be searched :");
scanf("%d", &num);

pos = BinaryrSearch(ar, 10, num);
if (pos != -1) {
printf("\nItem found @ %02d location.\n", pos);
}
else {
}
printf("\n");

return 0;
}
```

## Output

```Enter array elements (in ASC Order...):
Enter element 01 :10
Enter element 02 :20
Enter element 03 :30
Enter element 04 :40
Enter element 05 :50
Enter element 06 :60
Enter element 07 :70
Enter element 08 :80
Enter element 09 :90
Enter element 10 :100

Enter element to be searched :80

Item found @ 07 location.
```