C में लूप्स: For, While, Do While लूपिंग स्टेटमेंट्स [उदाहरण]
सी में लूप क्या है?
सी में लूपिंग स्टेटमेंट्स कथनों के अनुक्रम को कई बार निष्पादित करें जब तक कि बताई गई शर्त गलत न हो जाए। C में लूप में दो भाग होते हैं, एक लूप का मुख्य भाग और एक नियंत्रण कथन। नियंत्रण कथन कुछ शर्तों का एक संयोजन है जो लूप के मुख्य भाग को तब तक निष्पादित करने का निर्देश देता है जब तक कि निर्दिष्ट शर्त गलत न हो जाए। C लूप का उद्देश्य एक ही कोड को कई बार दोहराना है।
सी में लूप के प्रकार
किसी प्रोग्राम में नियंत्रण कथन की स्थिति के आधार पर, C में लूपिंग कथन को दो प्रकारों में वर्गीकृत किया जाता है:
1. प्रवेश नियंत्रित लूप
2. निकास नियंत्रित लूप
एक में सी में प्रवेश नियंत्रण लूप, लूप के बॉडी को निष्पादित करने से पहले एक शर्त की जाँच की जाती है। इसे प्री-चेकिंग लूप भी कहा जाता है।
एक में निकास नियंत्रित लूपलूप के बॉडी को निष्पादित करने के बाद एक कंडीशन की जाँच की जाती है। इसे पोस्ट-चेकिंग लूप भी कहा जाता है।

नियंत्रण की शर्तें अच्छी तरह से परिभाषित और निर्दिष्ट होनी चाहिए अन्यथा लूप अनंत बार निष्पादित होगा। वह लूप जो निष्पादन बंद नहीं करता है और कथनों को कई बार संसाधित करता है उसे कहा जाता है अपरिमित गांठ. अनंत लूप को " अनंत लूप " भी कहा जाता हैअंतहीन लूपअनंत लूप की कुछ विशेषताएं निम्नलिखित हैं:
1. कोई समाप्ति शर्त निर्दिष्ट नहीं है।
2. निर्दिष्ट शर्तें कभी पूरी नहीं होतीं।
निर्दिष्ट शर्त यह निर्धारित करती है कि लूप बॉडी को निष्पादित किया जाए या नहीं।
'सी' प्रोग्रामिंग भाषा हमें तीन प्रकार के लूप निर्माण प्रदान करती है:
1. while लूप
2. do-while लूप
3. फॉर लूप
| क्रमांक। | पाश प्रकार | विवरण |
|---|---|---|
| 1. | घुमाव के दौरान | while loop में, loop की body को प्रोसेस करने से पहले condition का मूल्यांकन किया जाता है। अगर condition true है तो और केवल तभी loop की body को निष्पादित किया जाता है। |
| 2. | डू-व्हाइल लूप | Do…while लूप में, कंडीशन हमेशा लूप की बॉडी के बाद निष्पादित होती है। इसे एग्जिट-कंट्रोल्ड लूप भी कहा जाता है। |
| 3. | पाश के लिए | फॉर लूप में, प्रारंभिक मान केवल एक बार निष्पादित किया जाता है, फिर स्थिति प्रत्येक पुनरावृत्ति के बाद काउंटर का परीक्षण करती है और एक निश्चित मान से उसकी तुलना करती है, तथा जब गलत मान लौटाया जाता है तो फॉर लूप को रोक देती है। |
जबकि C . में लूप
While लूप सबसे सरल लूपिंग संरचना है। C प्रोग्रामिंग भाषा में While लूप सिंटैक्स इस प्रकार है:
C में While Loop का सिंटैक्स
while (condition) {
statements;
}
यह एक एंट्री-नियंत्रित लूप है। While लूप में, लूप के बॉडी को प्रोसेस करने से पहले कंडीशन का मूल्यांकन किया जाता है। यदि कंडीशन सत्य है, तो और केवल तभी लूप के बॉडी को निष्पादित किया जाता है। लूप के बॉडी के निष्पादित होने के बाद नियंत्रण फिर से शुरुआत में वापस चला जाता है, और कंडीशन की जाँच की जाती है यदि यह सत्य है, तो वही प्रक्रिया तब तक निष्पादित होती है जब तक कंडीशन गलत नहीं हो जाती। एक बार जब कंडीशन गलत हो जाती है, तो नियंत्रण लूप से बाहर चला जाता है।
लूप से बाहर निकलने के बाद, नियंत्रण उन कथनों पर जाता है जो लूप के तुरंत बाद होते हैं। लूप के मुख्य भाग में एक से अधिक कथन हो सकते हैं। यदि इसमें केवल एक कथन है, तो कर्ली ब्रेसेज़ अनिवार्य नहीं हैं। हालाँकि, कर्ली ब्रेसेज़ का उपयोग करना एक अच्छा अभ्यास है, भले ही हमारे पास मुख्य भाग में एक ही कथन हो।
while loop में, अगर condition true नहीं है, तो loop की body एक बार भी निष्पादित नहीं होगी। do while loop में यह अलग है जिसे हम जल्दी ही देखेंगे।
निम्नलिखित प्रोग्राम C प्रोग्रामिंग उदाहरण में while लूप को दर्शाता है:
#include<stdio.h>
#include<conio.h>
int main()
{
int num=1; //initializing the variable
while(num<=10) //while loop with condition
{
printf("%d\n",num);
num++; //incrementing operation
}
return 0;
}
आउटपुट:
1 2 3 4 5 6 7 8 9 10
उपरोक्त प्रोग्राम while loop के उपयोग को दर्शाता है। उपरोक्त प्रोग्राम में, हमने while loop का उपयोग करके 1 से 10 तक की संख्याओं की श्रृंखला को प्रिंट किया है।

- हमने num नामक एक वेरिएबल को मान 1 के साथ आरंभीकृत किया है। हम 1 से 10 तक प्रिंट करने जा रहे हैं, इसलिए वेरिएबल को मान 1 के साथ आरंभीकृत किया गया है। यदि आप 0 से प्रिंट करना चाहते हैं, तो आरंभीकरण के दौरान मान 0 निर्दिष्ट करें।
- while लूप में, हमने एक शर्त (num<=10) प्रदान की है, जिसका अर्थ है कि लूप बॉडी को तब तक निष्पादित करेगा जब तक num का मान 10 नहीं हो जाता। उसके बाद, लूप समाप्त हो जाएगा, और नियंत्रण लूप के बाहर हो जाएगा।
- लूप के मुख्य भाग में, हमारे पास अपना नंबर प्रिंट करने के लिए एक प्रिंट फ़ंक्शन और लूप के प्रत्येक निष्पादन के लिए मान बढ़ाने के लिए एक वृद्धि ऑपरेशन होता है। num का प्रारंभिक मान 1 है, निष्पादन के बाद, यह 2 हो जाएगा, और अगले निष्पादन के दौरान, यह 3 हो जाएगा। यह प्रक्रिया तब तक जारी रहेगी जब तक कि मान 10 न हो जाए और फिर यह कंसोल पर श्रृंखला प्रिंट करेगा और लूप को समाप्त कर देगा।
\n का प्रयोग स्वरूपण प्रयोजनों के लिए किया जाता है, जिसका अर्थ है कि मान एक नई पंक्ति पर मुद्रित किया जाएगा।
C में Do-While लूप
C में do…while लूप while लूप के समान ही होता है, सिवाय इसके कि कंडीशन हमेशा लूप की बॉडी के बाद निष्पादित होती है। इसे एक्जिट-नियंत्रित लूप भी कहा जाता है।
सी प्रोग्रामिंग भाषा में do while loop का सिंटैक्स इस प्रकार है:
C में Do-While लूप का सिंटैक्स
do {
statements
} while (expression);
जैसा कि हमने while loop में देखा, body तभी निष्पादित होती है जब और केवल तभी जब condition true हो। कुछ मामलों में, हमें loop की body को कम से कम एक बार निष्पादित करना पड़ता है, भले ही condition false हो। इस प्रकार का ऑपरेशन do-while loop का उपयोग करके प्राप्त किया जा सकता है।
Do-while लूप में, लूप की बॉडी हमेशा कम से कम एक बार निष्पादित होती है। बॉडी के निष्पादित होने के बाद, यह कंडीशन की जांच करता है। यदि कंडीशन सत्य है, तो यह फिर से लूप की बॉडी को निष्पादित करेगा अन्यथा नियंत्रण लूप से बाहर स्थानांतरित हो जाता है।
While लूप के समान, जब नियंत्रण लूप से बाहर चला जाता है तो लूप के तुरंत बाद के कथन निष्पादित हो जाते हैं।
while और do-while लूप के बीच महत्वपूर्ण अंतर यह है कि while लूप में while को शुरुआत में लिखा जाता है। do-while लूप में while कंडीशन को अंत में लिखा जाता है और सेमी-कोलन (;) के साथ समाप्त होता है।
C में निम्नलिखित लूप प्रोग्राम do-while लूप की कार्यप्रणाली को दर्शाता है:
नीचे C उदाहरण में संख्या 2 की तालिका मुद्रित करने के लिए do-while लूप दिया गया है:
#include<stdio.h>
#include<conio.h>
int main()
{
int num=1; //initializing the variable
do //do-while loop
{
printf("%d\n",2*num);
num++; //incrementing operation
}while(num<=10);
return 0;
}
आउटपुट:
2 4 6 8 10 12 14 16 18 20
ऊपर दिए गए उदाहरण में, हमने do-while लूप का उपयोग करके 2 की गुणन सारणी प्रिंट की है। आइए देखें कि प्रोग्राम किस तरह से श्रृंखला प्रिंट करने में सक्षम था।

- सबसे पहले, हमने एक वेरिएबल 'num' को मान 1 के साथ आरंभीकृत किया है। फिर हमने एक do-while लूप लिखा है।
- लूप में, हमारे पास एक प्रिंट फ़ंक्शन है जो num के मान को 2 से गुणा करके श्रृंखला को प्रिंट करेगा।
- प्रत्येक वृद्धि के बाद, num का मान 1 से बढ़ जाएगा, और यह स्क्रीन पर प्रिंट हो जाएगा।
- शुरुआत में, num का मान 1 है। लूप के किसी भाग में, प्रिंट फ़ंक्शन इस तरह से निष्पादित किया जाएगा: 2*num जहाँ num=1 है, फिर 2*1=2 इसलिए मान दो प्रिंट किया जाएगा। यह तब तक चलता रहेगा जब तक num का मान 10 नहीं हो जाता। उसके बाद लूप समाप्त हो जाएगा और लूप के तुरंत बाद वाला कथन निष्पादित किया जाएगा। इस मामले में 0 लौटाएँ।
C में फॉर लूप
'C' प्रोग्रामिंग में फ़ॉर लूप एक अधिक कुशल लूप संरचना है। C में फ़ॉर लूप सिंटैक्स की सामान्य संरचना इस प्रकार है:
C में फॉर लूप का सिंटैक्स
for (initial value; condition; incrementation or decrementation )
{
statements;
}
- फॉर लूप का प्रारंभिक मान केवल एक बार निष्पादित किया जाता है।
- यह शर्त एक बूलियन अभिव्यक्ति है जो प्रत्येक पुनरावृत्ति के बाद काउंटर का परीक्षण करती है और एक निश्चित मान से उसकी तुलना करती है, तथा जब false लौटाया जाता है तो for loop को रोक देती है।
- वृद्धि/कमी काउंटर को एक निर्धारित मान से बढ़ाती (या घटाती) है।
निम्नलिखित प्रोग्राम C प्रोग्रामिंग उदाहरण में for loop को दर्शाता है:
#include<stdio.h>
int main()
{
int number;
for(number=1;number<=10;number++) //for loop to print 1-10 numbers
{
printf("%d\n",number); //to print the number
}
return 0;
}
आउटपुट:
1 2 3 4 5 6 7 8 9 10
उपरोक्त प्रोग्राम for loop का उपयोग करके 1-10 तक की संख्या श्रृंखला को प्रिंट करता है।

- हमने घोषणा की है परिवर्तनशील मानों को संग्रहीत करने के लिए int डेटा प्रकार का उपयोग करें।
- फॉर लूप में, इनिशियलाइज़ेशन भाग में, हमने वेरिएबल नंबर को 1 मान दिया है। कंडीशन भाग में, हमने अपनी कंडीशन और फिर इंक्रीमेंट भाग निर्दिष्ट किया है।
- लूप के मुख्य भाग में, हमारे पास कंसोल में नई लाइन पर संख्याओं को प्रिंट करने के लिए एक प्रिंट फ़ंक्शन है। हमारे पास number में संग्रहीत मान एक है, पहले पुनरावृत्ति के बाद मान में वृद्धि होगी, और यह 2 हो जाएगा। अब variable number का मान 2 है। शर्त की फिर से जाँच की जाएगी और चूँकि शर्त सत्य है, इसलिए loop निष्पादित होगा, और यह स्क्रीन पर दो प्रिंट करेगा। यह loop तब तक निष्पादित होता रहेगा जब तक variable का मान 10 नहीं हो जाता। उसके बाद, loop समाप्त हो जाएगा, और स्क्रीन पर 1-10 की एक श्रृंखला प्रिंट हो जाएगी।
C में, for लूप के प्रत्येक भाग में अल्पविराम द्वारा अलग किए गए एकाधिक अभिव्यक्तियाँ हो सकती हैं।
उदाहरण के लिए:
for (x = 0, y = num; x < y; i++, y--) {
statements;
}
इसके अलावा, हम अर्धविराम जोड़कर प्रारंभिक मान अभिव्यक्ति, शर्त और/या वृद्धि को छोड़ सकते हैं।
उदाहरण के लिए:
int i=0;
int max = 10;
for (; i < max; i++) {
printf("%d\n", i);
}
ध्यान दें कि लूप को नेस्ट भी किया जा सकता है जहाँ एक बाहरी लूप और एक आंतरिक लूप होता है। बाहरी लूप के प्रत्येक पुनरावृत्ति के लिए, आंतरिक लूप अपने पूरे चक्र को दोहराता है।
फॉर लूप में कई शर्तों के साथ निम्नलिखित उदाहरण पर विचार करें, जो गुणन तालिका आउटपुट करने के लिए C प्रोग्रामिंग में नेस्टेड फॉर लूप का उपयोग करता है:
#include <stdio.h>
int main() {
int i, j;
int table = 2;
int max = 5;
for (i = 1; i <= table; i++) { // outer loop
for (j = 0; j <= max; j++) { // inner loop
printf("%d x %d = %d\n", i, j, i*j);
}
printf("\n"); /* blank line between tables */
}}
आउटपुट:
1 x 0 = 0 1 x 1 = 1 1 x 2 = 2 1 x 3 = 3 1 x 4 = 4 1 x 5 = 5 2 x 0 = 0 2 x 1 = 2 2 x 2 = 4 2 x 3 = 6 2 x 4 = 8 2 x 5 = 10
फॉर लूप्स की नेस्टिंग किसी भी स्तर तक की जा सकती है। कोड को पढ़ने योग्य बनाने के लिए नेस्टेड लूप्स को पर्याप्त रूप से इंडेंट किया जाना चाहिए। 'सी' के कुछ संस्करणों में, नेस्टिंग 15 लूप तक सीमित है, लेकिन कुछ अधिक प्रदान करते हैं।
नेस्टेड लूप्स का उपयोग ज्यादातर ऐरे अनुप्रयोगों में किया जाता है जिसे हम आगे के ट्यूटोरियल में देखेंगे।
C में ब्रेक स्टेटमेंट
ब्रेक स्टेटमेंट का प्रयोग मुख्यतः किया जाता है स्विच कथनयह लूप को तुरंत रोकने के लिए भी उपयोगी है।
हम निम्नलिखित प्रोग्राम पर विचार करते हैं जो while लूप से बाहर निकलने के लिए break प्रस्तुत करता है:
#include <stdio.h>
int main() {
int num = 5;
while (num > 0) {
if (num == 3)
break;
printf("%d\n", num);
num--;
}}
आउटपुट:
5 4
C में Continue कथन
जब आप अगले पुनरावृत्ति पर जाना चाहते हैं लेकिन लूप में बने रहना चाहते हैं, तो आपको continue कथन का उपयोग करना चाहिए।
उदाहरण के लिए:
#include <stdio.h>
int main() {
int nb = 7;
while (nb > 0) {
nb--;
if (nb == 5)
continue;
printf("%d\n", nb);
}}
आउटपुट:
6 4 3 2 1
अतः, मान 5 छोड़ दिया गया है।
कौन सा लूप चुनें?
लूप का चयन करना हमेशा एक प्रोग्रामर के लिए कठिन कार्य होता है, लूप का चयन करने के लिए निम्नलिखित चरण करें:
- समस्या का विश्लेषण करें और जाँचें कि क्या इसके लिए पूर्व-परीक्षण या पश्च-परीक्षण लूप की आवश्यकता है।
- यदि पूर्व-परीक्षण आवश्यक हो तो while या for लूप का प्रयोग करें।
- यदि पोस्ट-टेस्ट आवश्यक हो तो do-while लूप का उपयोग करें।
सारांश
- C में लूप को परिभाषित करें: लूप किसी भी C में प्रमुख अवधारणाओं में से एक है। प्रोग्रामिंग भाषासी भाषा में लूप्स को सशर्त कथनों का उपयोग करके कार्यान्वित किया जाता है।
- सी में लूप नियंत्रण कथनों के एक ब्लॉक को कई बार तब तक निष्पादित किया जाता है जब तक कि स्थिति गलत नहीं हो जाती।
- सी प्रोग्रामिंग में लूप दो प्रकार के होते हैं: प्रवेश-नियंत्रित और निकास-नियंत्रित।
- सी में विभिन्न लूप नियंत्रण निर्देशों की सूची बनाएं: सी प्रोग्रामिंग हमें 1) while 2) do-while और 3) for लूप नियंत्रण निर्देश प्रदान करती है।
- फॉर और व्हाइल लूप सी प्रोग्रामिंग, सी भाषा में प्रवेश-नियंत्रित लूप हैं।
- Do-while, C में एक निकास नियंत्रण लूप है।
