समस्या
लिखे गए कोड के आधार पर दिए गए सरणी को अवरोही या आरोही क्रम में क्रमबद्ध करें।
समाधान
एक सरणी संबंधित डेटा आइटम का एक समूह है जो एक सामान्य नाम साझा करता है। किसी सरणी में किसी विशेष मान की पहचान उसके "इंडेक्स नंबर" की सहायता से की जाती है।
सरणी घोषित करना
एक सरणी घोषित करने के लिए वाक्य रचना इस प्रकार है -
datatype array_name [size];
उदाहरण के लिए,
float marks [50]
यह 50 फ्लोट तत्वों वाली एक सरणी के रूप में 'चिह्न' घोषित करता है।
int number[10]
यह 'संख्या' को एक सरणी के रूप में घोषित करता है जिसमें अधिकतम 10 पूर्णांक स्थिरांक होते हैं।
प्रत्येक तत्व को "सरणी अनुक्रमणिका" का उपयोग करके पहचाना जाता है।
सरणी अनुक्रमणिका का उपयोग करके सरणी तत्वों तक पहुंचना आसान है।
सरणी तत्वों को आरोही क्रम में क्रमबद्ध करने के लिए हम जिस तर्क का उपयोग करते हैं वह इस प्रकार है -
for (i = 0; i < n; ++i){ for (j = i + 1; j < n; ++j){ if (num[i] > num[j]){ a = num[i]; num[i] = num[j]; num[j] = a; } } }
कार्यक्रम
किसी सरणी को आरोही क्रम में क्रमबद्ध करने के लिए C प्रोग्राम निम्नलिखित है -
#include <stdio.h> void main (){ int num[20]; int i, j, a, n; printf("enter number of elements in an array\n"); scanf("%d", &n); printf("Enter the elements\n"); for (i = 0; i < n; ++i) scanf("%d", &num[i]); for (i = 0; i < n; ++i){ for (j = i + 1; j < n; ++j){ if (num[i] > num[j]){ a = num[i]; num[i] = num[j]; num[j] = a; } } } printf("The numbers in ascending order is:\n"); for (i = 0; i < n; ++i){ printf("%d\n", num[i]); } }
आउटपुट
जब उपरोक्त प्रोग्राम को निष्पादित किया जाता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है -
enter number of elements in an array 5 Enter the elements 12 23 89 11 22 The numbers in ascending order is: 11 12 22 23 89