Develop non-recursive functions to perform search for a Key value in a given list using (i) Binary Search Non Recursive

#include<stdio.h>

int binary_search(int a[],int low,int high,int key);

int main()

{

int a[10],i,n,key,found;

clrscr();

printf("enter no of elements");

scanf("%d",&n);

printf("enter %d elements",n);

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

scanf("%d",&a[i]);

printf("enter key element");

scanf("%d",&key);

found=binary_search(a,0,n-1,key);

if(found==-1)

printf("\n unsuccessful search key %d is not found in the list",key);

else

printf("\n successful search key %d is found at index %d",key,found);

return 0;

}

int binary_search(int a[],int low,int high,int key)

{

int mid;

while(low<=high)

{

mid=(low+high)/2;

if(key==a[mid])

return mid;

else if(key<a[mid])

high=mid-1;

else

low=mid+1;

}

return -1;

}

Comments