Hello Everyone,
I want to know about more binary search in C programming and their various variation and how its work? I am sharing sharing code. Can anyone tell me is it right? Requirements ask for using binary search on an unsorted array, then it needs to be sorted first before using the binary search algorithm on it or anyone tell me where i can explore more about binary search in C program.
The code mentioned below assumes that the input numbers follow an ascending order!
int main()
int c, first, last, middle, n, search, array[100];
printf("Enter number of elements:\n");
scanf("%d",&n);
printf("Enter %d integers:\n", n);
for (c = 0; c < n; c++)
scanf("%d",&array[c]);
printf("Enter the value to find:\n");
scanf("%d", &search);
first = 0;
last = n - 1;
middle = (first+last)/2;
if (array[middle] < search)
first = middle + 1;
else if (array[middle] == search) {
printf("%d is present at index %d.\n", search, middle+1);
break;
}
else
last = middle - 1;
middle = (first + last)/2;
if (first > last)
printf("Not found! %d is not present in the list.\n", search);
return 0;