C प्रोग्राम को संदर्भ द्वारा कॉल का उपयोग करते हुए चक्रीय क्रम में स्वैप संख्या

इस उदाहरण में, उपयोगकर्ता द्वारा दर्ज किए गए तीन नंबर को संदर्भ द्वारा कॉल का उपयोग करके चक्रीय क्रम में स्वैप किया जाता है।

इस उदाहरण को समझने के लिए, आपको निम्नलिखित सी प्रोग्रामिंग विषयों का ज्ञान होना चाहिए:

  • C पॉइंटर्स
  • सी पास पते और संकेत

संदर्भ द्वारा कॉल का उपयोग कर स्वैप तत्वों का कार्यक्रम

#include void cyclicSwap(int *a, int *b, int *c); int main() ( int a, b, c; printf("Enter a, b and c respectively: "); scanf("%d %d %d", &a, &b, &c); printf("Value before swapping:"); printf("a = %d b = %d c = %d", a, b, c); cyclicSwap(&a, &b, &c); printf("Value after swapping:"); printf("a = %d b = %d c = %d", a, b, c); return 0; ) void cyclicSwap(int *n1, int *n2, int *n3) ( int temp; // swapping in cyclic order temp = *n2; *n2 = *n1; *n1 = *n3; *n3 = temp; ) 

आउटपुट

क्रमशः ए, बी और सी दर्ज करें: स्वैप करने से पहले 1 2 3 मान: स्वैप के बाद a = 1 b = 2 c = 3 मान: a = 3 b = 1 c = 2 

यहां, उपयोगकर्ता द्वारा दर्ज किए गए तीन नंबर क्रमशः चर, बी और सी में संग्रहीत किए जाते हैं। इन नंबरों के पते cyclicSwap()फ़ंक्शन को दिए जाते हैं।

cyclicSwap(&a, &b, &c); 

के फंक्शन डेफिनिशन में cyclicSwap(), हमने इन पतों को पॉइंटर्स को सौंपा है।

cyclicSwap(int *n1, int *n2, int *n3) (… ) 

जब एन 1, एन 2 और एन 3 अंदर cyclicSwap()बदले जाते हैं, तो अंदर, बी और सी के मूल्य main()भी बदल जाते हैं।

नोट:cyclicSwap() समारोह के लिए कुछ भी नहीं लौटा रहा है।

दिलचस्प लेख...