Arrays एक प्रकार की डेटा संरचना है जो एक ही प्रकार के तत्वों के एक निश्चित आकार के अनुक्रमिक संग्रह को संग्रहीत कर सकती है।
डेटा के संग्रह को संग्रहीत करने के लिए एक सरणी का उपयोग किया जाता है, लेकिन एक सरणी को उसी प्रकार के चर के संग्रह के रूप में सोचना अक्सर अधिक उपयोगी होता है।
सीमाएं
किसी सरणी की सीमाओं को नीचे समझाया गया है -
-
एक सरणी जो बनती है वह सजातीय होगी। यानी, एक पूर्णांक सरणी में केवल पूर्णांक मान संग्रहीत किए जा सकते हैं, जबकि एक फ्लोट सरणी में केवल फ़्लोटिंग मान और वर्ण सरणी में केवल वर्ण हो सकते हैं। इस प्रकार, किसी भी सरणी में दो डेटा प्रकारों के मान नहीं हो सकते हैं।
-
एक सरणी घोषित करते समय, एक सरणी का आकार देना अनिवार्य है, और आकार स्थिर होना चाहिए। इस प्रकार, स्मृति की या तो कमी या अपव्यय होता है।
-
किसी सरणी में तत्वों को सम्मिलित करने या हटाने के लिए स्थानांतरण आवश्यक है।
-
एक सरणी सीमाओं की जांच नहीं करती है:सी भाषा में, हम जांच नहीं सकते हैं कि सरणी में दर्ज मान उस सरणी के आकार से अधिक हैं या नहीं।
-
सबस्क्रिप्ट के साथ दर्ज किया गया डेटा, सरणी के आकार से अधिक है और इसे सरणी के बाहर रखा जाएगा। आम तौर पर, डेटा या प्रोग्राम के शीर्ष पर ही।
-
इससे अप्रत्याशित परिणाम सामने आएंगे, कम से कम कहने के लिए। साथ ही, प्रोग्रामर को सरणी आकार से आगे जाने की चेतावनी देने के लिए कोई त्रुटि संदेश नहीं होगा। कुछ मामलों में, प्रोग्राम हैंग हो सकता है।
इस प्रकार, निम्नलिखित कार्यक्रम अवांछित परिणाम दे सकता है -
int a[10],i; for(i=0;i<=20;i++) a[i]=i;
उदाहरण
दो सरणियों का योग प्रदर्शित करने के लिए सी प्रोग्राम निम्नलिखित है -
#include<stdio.h> void main(){ //Declaring array with compile time initialization// int array1[5],array2[5],sum[5]; //Declaring variables// int i; //Printing O/p using for loop// printf("Enter the values of array1 :\n"); for(i=0;i<5;i++){ printf("array1[%d] : \n",i); scanf("%d",&array1[i]); } printf("Enter the values of array2 :\n"); for(i=0;i<5;i++){ printf("array2[%d] :\n",i); scanf("%d",&array2[i]); } printf("Elements in the sum of array1 and array2 are:\n "); for(i=0;i<5;i++){ sum[i]=array1[i]+array2[i]; printf("%d ",sum[i]); } }
आउटपुट
जब उपरोक्त प्रोग्राम को निष्पादित किया जाता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है -
Enter the values of array1 : array1[0] :2 array1[1] :3 array1[2] :1 array1[3] :2 array1[4] :3 Enter the values of array2 : array2[0] :4 array2[1] :5 array2[2] :3 array2[3] :2 array2[4] :1 Elements in the sum of array1 and array2 are: 6 8 4 4 4