समस्या
उपयोगकर्ता द्वारा रनटाइम पर किसी सरणी से किसी तत्व को खोजने के लिए एक सी प्रोग्राम लिखें और परिणाम खोज के बाद स्क्रीन पर प्रदर्शित किया जाए। यदि खोज तत्व किसी सरणी में नहीं है, तो हमें खोजने की आवश्यकता है तत्व नहीं मिला है।
समाधान
एक नाम के तहत सामान्य तत्वों के समूह को रखने के लिए एक सरणी का उपयोग किया जाता है
सरणी संचालन इस प्रकार हैं -
- सम्मिलित करें
- हटाएं
- खोज
एल्गोरिदम
पॉइंटर्स की मदद से तत्वों को एक सरणी में खोजने के लिए एक एल्गोरिदम देखें -
चरण 1 - तत्वों की संख्या घोषित करें और पढ़ें।
चरण 2 - रनटाइम पर सरणी आकार घोषित करें और पढ़ें।
चरण 3 - सरणी तत्वों को इनपुट करें।
चरण 4 - एक सूचक चर घोषित करें।
चरण 5 - रनटाइम पर मेमोरी को गतिशील रूप से आवंटित करें।
चरण 6 - एक तत्व दर्ज करें जिसे खोजा जाना है।
चरण 7 - जाँच करें कि क्या कोई तत्व किसी सरणी में ट्रैवर्सिंग करके मौजूद है। यदि कोई तत्व पाया जाता है तो "हां" प्रदर्शित करें, अन्यथा "नहीं"।
उदाहरण
सरणी का आकार है:5
सरणी तत्व इस प्रकार हैं:
1 2 3 4 5
खोजा जाने वाला तत्व दर्ज करें:4
आउटपुट इस प्रकार है -
4 is present in the array
उदाहरण
पॉइंटर्स की मदद से तत्वों को एक सरणी में हटाने के लिए सी प्रोग्राम निम्नलिखित है -
#include<stdio.h> int i,l; int search(int ,int *,int); int main(){ int n,m; printf("enter the size of array:"); scanf("%d",&n); int a[n]; printf("enter the elements:\n"); for(i=0;i<n;i++){ scanf("%d",&a[i]); } printf("enter the element to be searched:"); scanf("%d",&m); search(n,a,m); return 0; } int search(int n,int *a,int m){ for(i=0;i<n;i++){ if(m==a[i]){ l=1; break; } } if(l==1){ printf("%d is present in the array",m); } else { printf("%d is not present in the array",m); } }
आउटपुट
जब उपरोक्त प्रोग्राम को निष्पादित किया जाता है, तो यह निम्न आउटपुट उत्पन्न करता है -
Run 1: enter the size of array:5 enter the elements: 14 12 11 45 23 enter the element to be searched:11 11 is present in the array Run 2: enter the size of array:3 enter the elements: 12 13 14 enter the element to be searched:45 45 is not present in the array