6. C PROGRAMMING LAB | Check Now
C PROGRAMMING LAB –06] Introduce 1D Array manipulation and implement binary search
Algorithm
- Step-1: Start
- Step-2: [Read the value of N]-Read N
- Step-3: [Enter the elements in the ascending order]- For i=0 to N-1 is to be read from keyboard
- Step-4: [Enter a element for searching that could be a key element]
- Step-5: Intitially set low=0 and high = N
- Step-6: [Find out the middle value]-Mid = (low + high)/2;
- Step-7: Check wheather the key value is lesser than the middle value than goto step 8
- Check wheather the key value is greater than the middle value than goto step 9
- Step-8: high = mid -1
- Step-9: low = mid + 1
- Step-10: if key value and mid- value are same then goto step 11 if not than goto step 12
- Step-11: Successful search
- Step-12: Not searched the key element
- Step-13: Stop
Flowchart
Program -6 source code
#include<stdio.h> #include<string.h> void main() { char name[50][50],key[50]; int n,i,low,high,mid,found=0; printf("How many names to Read:\n"); scanf("%d",&n); printf("Enter the Names in ascending order:\n"); for(i=0;i<n;i++) { scanf("%s",name[i]); } printf("\nType the name to be searched:"); scanf("%s",key); low=0; high=n-1; while(low<=high && !found) { mid=(low+high)/2; if(strcmp(name[mid],key)==0) found=1; else if(strcmp(name[mid],key)<0) low=mid+1; else high=mid-1; } if(found==1) printf("\nSearch successful and Name found in the list at position:%d",mid+1); else printf("Name not found and search Unsuccessful....!"); }
C PROGRAMMING -Output
- How many names to Read:
- 3
- Enter the names in ascending order
- abhishek
- keshev
- veresh
- Type the name to be searched
- keshav
- Type the name to be searched
- Search successful and name found in the list at position : 2
C PROGRAMMING -Viva Questions
1] What is an array / definition of array
2] What are the types of array?
3] What is a multidimensional array?
4] How to declare and initialize one dimensional array?
5] What are the advantages of an array?
6] What is the difference between array and string?
7] Write the syntax of declaring an array.