Bucla în timp ce este cunoscută și ca buclă pre-testată. În general, o buclă while permite ca o parte a codului să fie executată de mai multe ori, în funcție de o anumită condiție booleană. Poate fi privit ca o afirmație care se repetă. Bucla while este folosită mai ales în cazul în care numărul de iterații nu este cunoscut în prealabil.
Sintaxa buclei while în limbajul C
Sintaxa buclei while în limbajul c este dată mai jos:
while(condition){ //code to be executed }
Organigrama buclei while în C
Exemplu de buclă while în limbajul C
Să vedem programul simplu al buclei while care tipărește tabelul 1.
#include int main(){ int i=1; while(i<=10){ printf('%d ',i); i++; } return 0; < pre> <h4>Output</h4> <pre> 1 2 3 4 5 6 7 8 9 10 </pre> <h2>Program to print table for the given number using while loop in C</h2> <pre> #include int main(){ int i=1,number=0,b=9; printf('Enter a number: '); scanf('%d',&number); while(i<=10){ printf('%d ',(number*i)); i++; } return 0; < pre> <h4>Output</h4> <pre> Enter a number: 50 50 100 150 200 250 300 350 400 450 500 </pre> <pre> Enter a number: 100 100 200 300 400 500 600 700 800 900 1000 </pre> <hr> <h2>Properties of while loop</h2> <ul> <li>A conditional expression is used to check the condition. The statements defined inside the while loop will repeatedly execute until the given condition fails.</li> <li>The condition will be true if it returns 0. The condition will be false if it returns any non-zero number.</li> <li>In while loop, the condition expression is compulsory.</li> <li>Running a while loop without a body is possible.</li> <li>We can have more than one conditional expression in while loop.</li> <li>If the loop body contains only one statement, then the braces are optional.</li> </ul> <h4>Example 1</h4> <pre> #include void main () { int j = 1; while(j+=2,j<=10) { printf('%d ',j); } printf('%d',j); < pre> <h4>Output</h4> <pre> 3 5 7 9 11 </pre> <h4>Example 2</h4> <pre> #include void main () { while() { printf('hello Javatpoint'); } } </pre> <h4>Output</h4> <pre> compile time error: while loop can't be empty </pre> <h4>Example 3</h4> <pre> #include void main () { int x = 10, y = 2; while(x+y-1) { printf('%d %d',x--,y--); } } </pre> <h4>Output</h4> <pre> infinite loop </pre> <h2>Infinitive while loop in C</h2> <p>If the expression passed in while loop results in any non-zero value then the loop will run the infinite number of times.</p> <pre> while(1){ //statement } </pre></=10)></pre></=10){></pre></=10){>
Program pentru a tipări tabelul pentru numărul dat folosind bucla while în C
#include int main(){ int i=1,number=0,b=9; printf('Enter a number: '); scanf('%d',&number); while(i<=10){ printf(\'%d \',(number*i)); i++; } return 0; < pre> <h4>Output</h4> <pre> Enter a number: 50 50 100 150 200 250 300 350 400 450 500 </pre> <pre> Enter a number: 100 100 200 300 400 500 600 700 800 900 1000 </pre> <hr> <h2>Properties of while loop</h2> <ul> <li>A conditional expression is used to check the condition. The statements defined inside the while loop will repeatedly execute until the given condition fails.</li> <li>The condition will be true if it returns 0. The condition will be false if it returns any non-zero number.</li> <li>In while loop, the condition expression is compulsory.</li> <li>Running a while loop without a body is possible.</li> <li>We can have more than one conditional expression in while loop.</li> <li>If the loop body contains only one statement, then the braces are optional.</li> </ul> <h4>Example 1</h4> <pre> #include void main () { int j = 1; while(j+=2,j<=10) { printf(\'%d \',j); } printf(\'%d\',j); < pre> <h4>Output</h4> <pre> 3 5 7 9 11 </pre> <h4>Example 2</h4> <pre> #include void main () { while() { printf('hello Javatpoint'); } } </pre> <h4>Output</h4> <pre> compile time error: while loop can't be empty </pre> <h4>Example 3</h4> <pre> #include void main () { int x = 10, y = 2; while(x+y-1) { printf('%d %d',x--,y--); } } </pre> <h4>Output</h4> <pre> infinite loop </pre> <h2>Infinitive while loop in C</h2> <p>If the expression passed in while loop results in any non-zero value then the loop will run the infinite number of times.</p> <pre> while(1){ //statement } </pre></=10)></pre></=10){>
Enter a number: 100 100 200 300 400 500 600 700 800 900 1000
Proprietățile buclei while
- O expresie condiționată este folosită pentru a verifica condiția. Instrucțiunile definite în bucla while se vor executa în mod repetat până când condiția dată eșuează.
- Condiția va fi adevărată dacă returnează 0. Condiția va fi falsă dacă returnează orice număr diferit de zero.
- În bucla while, expresia condiției este obligatorie.
- Este posibil să rulați o buclă while fără corp.
- Putem avea mai mult de o expresie condiționată în bucla while.
- Dacă corpul buclei conține o singură instrucțiune, atunci acoladele sunt opționale.
Exemplul 1
#include void main () { int j = 1; while(j+=2,j<=10) { printf(\'%d \',j); } printf(\'%d\',j); < pre> <h4>Output</h4> <pre> 3 5 7 9 11 </pre> <h4>Example 2</h4> <pre> #include void main () { while() { printf('hello Javatpoint'); } } </pre> <h4>Output</h4> <pre> compile time error: while loop can't be empty </pre> <h4>Example 3</h4> <pre> #include void main () { int x = 10, y = 2; while(x+y-1) { printf('%d %d',x--,y--); } } </pre> <h4>Output</h4> <pre> infinite loop </pre> <h2>Infinitive while loop in C</h2> <p>If the expression passed in while loop results in any non-zero value then the loop will run the infinite number of times.</p> <pre> while(1){ //statement } </pre></=10)>
Exemplul 2
#include void main () { while() { printf('hello Javatpoint'); } }
Ieșire
compile time error: while loop can't be empty
Exemplul 3
#include void main () { int x = 10, y = 2; while(x+y-1) { printf('%d %d',x--,y--); } }
Ieșire
infinite loop
Bucla while infinitiv în C
Dacă expresia transmisă în bucla while are ca rezultat orice valoare diferită de zero, atunci bucla va rula de un număr infinit de ori.
while(1){ //statement }=10)>=10){>=10){>