Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

सी भाषा में अस्थायी चर का उपयोग किए बिना दो सरणियों को कैसे स्वैप करें?

Temp चर का उपयोग किए बिना दो सरणियों को स्वैप करें। यहां, हम तीसरे चर के बजाय अंकगणितीय ऑपरेटरों और बिटवाइज ऑपरेटरों का उपयोग करने जा रहे हैं।

पहली सरणी पढ़ने . का तर्क इस प्रकार है -

printf("enter first array ele:\n");
for(i = 0; i < size; i++){
   scanf("%d", &first[i]);
}

दूसरी सरणी पढ़ने . का तर्क इस प्रकार है -

printf("enter first array ele:\n");
for(i = 0; i < size; i++){
   scanf("%d", &first[i]);
}

तीसरे चर का उपयोग किए बिना दो सरणियों को स्वैप करने का तर्क इस प्रकार है -

for(i = 0; i < size; i++){
   first[i] = first[i] + sec[i];
   sec[i] = first[i] - sec[i];
   first[i] = first[i] - sec[i];
}

कार्यक्रम

Temp चर का उपयोग किए बिना दो सरणियों को स्वैप करने के लिए C प्रोग्राम निम्नलिखित है -

#include<stdio.h>
int main(){
   int size, i, first[20], sec[20];
   printf("enter the size of array:");
   scanf("%d", &size);
   printf("enter first array ele:\n");
   for(i = 0; i < size; i++){
      scanf("%d", &first[i]);
   }
   printf("enter second array ele:\n");
   for(i = 0; i < size; i ++){
      scanf("%d", &sec[i]);
   }
   //Swapping two Arrays
   for(i = 0; i < size; i++){
      first[i] = first[i] + sec[i];
      sec[i] = first[i] - sec[i];
      first[i] = first[i] - sec[i];
   }
   printf("\n first array after swapping %d elements\n", size);
   for(i = 0; i < size; i ++){
      printf(" %d \t ",first[i]);
   }
   printf("sec array after Swapping %d elements\n", size);
   for(i = 0; i < size; i ++){
      printf(" %d \t ",sec[i]);
   }
   return 0;
}

आउटपुट

जब उपरोक्त प्रोग्राम को निष्पादित किया जाता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है -

enter the size of array:5
enter first array ele:
11 12 13 14 15
enter second array ele:
90 80 70 60 50
first array after swapping 5 elements
90 80 70 60 50
sec array after Swapping 5 elements
11 12 13 14 15

  1. सी भाषा में पॉइंटर्स का उपयोग करके सरणी तत्वों के योग की गणना कैसे करें?

    पॉइंटर एक वेरिएबल है जो दूसरे वेरिएबल के एड्रेस को स्टोर करता है। निम्नलिखित कथन पर विचार करें - int qty = 179; सूचक घोषित करना पॉइंटर घोषित करने का सिंटैक्स इस प्रकार है - int *p; यहाँ, p एक पॉइंटर वेरिएबल है जो अन्य वेरिएबल का पता रखता है। सूचक का प्रारंभ एड्रेस ऑपरेटर (&) का उपयोग पॉइंटर वे

  1. सी भाषा में द्विआधारी खोज का उपयोग करके किसी सरणी में न्यूनतम तत्व कैसे खोजें?

    C प्रोग्रामिंग भाषा दो प्रकार की खोज तकनीक प्रदान करती है। वे इस प्रकार हैं - रैखिक खोज द्विआधारी खोज द्विआधारी खोज यह विधि केवल क्रमबद्ध सूची पर लागू की जा सकती है। दी गई सूची को दो बराबर भागों में बांटा गया है। दी गई कुंजी की तुलना सूची के मध्य तत्व से की जाती है। यहां तीन स्थितियां हो सकती ह

  1. सी भाषा में रैखिक खोज का उपयोग करके किसी सरणी में न्यूनतम तत्व कैसे खोजें?

    C प्रोग्रामिंग भाषा दो प्रकार की खोज तकनीक प्रदान करती है। वे इस प्रकार हैं - रैखिक खोज द्विआधारी खोज रैखिक खोज मुख्य तत्व की खोज रैखिक तरीके से की जाती है। यह सबसे सरल खोज तकनीक है। यह सूची को क्रमबद्ध करने की अपेक्षा नहीं करता है। सीमा - इसमें अधिक समय लगता है और सिस्टम की शक्ति कम हो जाती है।