Petlje u C-u: Izjave petlji For, While, Do While [Primjeri]

ล to je petlja u C-u?

Izjave u petlji u C-u izvrลกite niz naredbi mnogo puta dok navedeni uvjet ne postane laลพan. Petlja u C-u sastoji se od dva dijela, tijela petlje i kontrolne naredbe. Kontrolna izjava je kombinacija nekih uvjeta koji usmjeravaju tijelo petlje da se izvrลกi sve dok navedeni uvjet ne postane laลพan. Svrha C petlje je ponavljanje istog koda viลกe puta.

Vrste petlji u C

Ovisno o poloลพaju kontrolne naredbe u programu, naredba petlje u C-u klasificira se u dvije vrste:

1. Ulazno kontrolirana petlja

2. Izlaz iz kontrolirane petlje

U ulazna kontrolna petlja u C, uvjet se provjerava prije izvrลกavanja tijela petlje. Naziva se i petljom prethodne provjere.

U izlazna kontrolirana petlja, uvjet se provjerava nakon izvoฤ‘enja tijela petlje. Takoฤ‘er se naziva petlja za naknadnu provjeru.

Vrste petlji u C
Petlja uzorka

Uvjeti upravljanja moraju biti dobro definirani i specificirani inaฤe ฤ‡e se petlja izvrลกiti beskonaฤan broj puta. Petlja koja ne prestaje izvrลกavati i obraฤ‘uje naredbe broj puta naziva se an beskonaฤna petlja. Beskonaฤna petlja se takoฤ‘er naziva "Beskrajna petlja.โ€ Slijede neke karakteristike beskonaฤne petlje:

1. Nije naveden raskidni uvjet.

2. Navedeni uvjeti nikada ne ispunjavaju.

Navedeni uvjet odreฤ‘uje hoฤ‡e li se izvrลกiti tijelo petlje ili ne.

Programski jezik 'C' nudi nam tri vrste konstrukcija petlje:

1. while petlja

2. Do-while petlja

3. For petlja

Sr. Ne. Tip petlje Description
1. Dok petlja U while petlji uvjet se procjenjuje prije obrade tijela petlje. Ako je uvjet istinit tada i samo tada se izvrลกava tijelo petlje.
2. Do-While petlja U doโ€ฆwhile petlji, uvjet se uvijek izvrลกava nakon tijela petlje. Takoฤ‘er se naziva petlja kontrolirana izlazom.
3. Za petlju U for petlji, poฤetna vrijednost se izvodi samo jednom, zatim uvjet testira i usporeฤ‘uje brojaฤ s fiksnom vrijednoลกฤ‡u nakon svake iteracije, zaustavljajuฤ‡i for petlju kada se vrati false.

Dok je petlja u C

While petlja je najjednostavnija struktura petlje. Sintaksa while petlje u programskom jeziku C je sljedeฤ‡a:

Sintaksa while petlje u C-u

while (condition) {
             statements;
}

To je ulazno kontrolirana petlja. U while petlji uvjet se procjenjuje prije obrade tijela petlje. Ako je uvjet istinit tada i samo tada se izvrลกava tijelo petlje. Nakon ลกto se tijelo petlje izvrลกi, kontrola se ponovno vraฤ‡a na poฤetak, a uvjet se provjerava je li istinit, isti se proces izvrลกava dok uvjet ne postane laลพan. Jednom kada uvjet postane laลพan, kontrola izlazi iz petlje.

Nakon izlaska iz petlje, kontrola prelazi na iskaze koji se nalaze odmah nakon petlje. Tijelo petlje moลพe sadrลพavati viลกe od jedne izjave. Ako sadrลพi samo jednu izjavu, tada vitiฤaste zagrade nisu obavezne. Ipak, dobra je praksa koristiti vitiฤaste zagrade ฤak i ako imamo jednu izjavu u tijelu.

U while petlji, ako uvjet nije istinit, tada se tijelo petlje neฤ‡e izvrลกiti, niti jednom. Drugaฤije je u do while petlji koju ฤ‡emo uskoro vidjeti.

Sljedeฤ‡i program ilustrira while petlju u primjeru C programiranja:

#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;
}

Izlaz:

1
2
3
4
5
6
7
8
9
10

Gornji program ilustrira koriลกtenje while petlje. U gornjem programu ispisali smo niz brojeva od 1 do 10 koristeฤ‡i while petlju.

Dok je petlja u C
Dok petlja u C programiranju
  1. Inicijalizirali smo varijablu nazvanu num s vrijednoลกฤ‡u 1. Ispisat ฤ‡emo od 1 do 10 stoga je varijabla inicijalizirana s vrijednoลกฤ‡u 1. Ako ลพelite ispisivati โ€‹โ€‹od 0, dodijelite vrijednost 0 tijekom inicijalizacije.
  2. U while petlji osigurali smo uvjet (num<=10), ลกto znaฤi da ฤ‡e petlja izvrลกavati tijelo dok vrijednost num ne postane 10. Nakon toga, petlja ฤ‡e biti prekinuta, a kontrola ฤ‡e pasti izvan petlje.
  3. U tijelu petlje imamo funkciju ispisa za ispis naลกeg broja i operaciju poveฤ‡anja za poveฤ‡anje vrijednosti po izvrลกavanju petlje. Poฤetna vrijednost num je 1, nakon izvoฤ‘enja postat ฤ‡e 2, a tijekom sljedeฤ‡eg izvoฤ‘enja postat ฤ‡e 3. Ovaj proces ฤ‡e se nastaviti dok vrijednost ne postane 10, a zatim ฤ‡e ispisati niz na konzoli i prekinuti petlju .

\n se koristi za potrebe oblikovanja ลกto znaฤi da ฤ‡e vrijednost biti ispisana u novom retku.

Do-While petlja u C-u

Doโ€ฆwhile petlja u C-u sliฤna je while petlji osim ลกto se uvjet uvijek izvrลกava nakon tijela petlje. Takoฤ‘er se naziva petlja kontrolirana izlazom.

Sintaksa do while petlje u programskom jeziku C je sljedeฤ‡a:

Sintaksa Do-While petlje u C-u

 do {
  statements
} while (expression);

Kao ลกto smo vidjeli u while petlji, tijelo se izvrลกava ako i samo ako je uvjet istinit. U nekim sluฤajevima moramo izvrลกiti tijelo petlje barem jednom ฤak i ako je uvjet laลพan. Ova vrsta operacije moลพe se postiฤ‡i koriลกtenjem do-while petlje.

U do-while petlji, tijelo petlje uvijek se izvrลกava barem jednom. Nakon ลกto je tijelo izvrลกeno, onda provjerava stanje. Ako je uvjet istinit, tada ฤ‡e ponovno izvrลกiti tijelo petlje, inaฤe se kontrola prenosi izvan petlje.

Sliฤno while petlji, nakon ลกto kontrola izaฤ‘e iz petlje izvode se naredbe koje su odmah nakon petlje.

Kritiฤna razlika izmeฤ‘u while i do-while petlje je u tome ลกto je u while petlji while zapisan na poฤetku. U do-while petlji, while uvjet se piลกe na kraju i zavrลกava toฤkom-zarezom (;)

Sljedeฤ‡i program petlje u C-u ilustrira rad do-while petlje:

Ispod je petlja do-while u primjeru C za ispis tablice broja 2:

#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;
}

Izlaz:

2
4
6
8
10
12
14
16
18
20

U gornjem primjeru ispisali smo tablicu mnoลพenja 2 koristeฤ‡i do-while petlju. Pogledajmo kako je program uspio ispisati seriju.

Do-While petlja u C-u
Do-While petlja u C programiranju
  1. Prvo smo inicijalizirali varijablu 'num' s vrijednoลกฤ‡u 1. Zatim smo napisali do-while petlju.
  2. U petlji imamo funkciju ispisa koja ฤ‡e ispisati niz mnoลพenjem vrijednosti num s 2.
  3. Nakon svakog poveฤ‡anja, vrijednost num ฤ‡e se poveฤ‡ati za 1 i bit ฤ‡e ispisana na ekranu.
  4. U poฤetku, vrijednost num je 1. U tijelu petlje, funkcija ispisa ฤ‡e se izvrลกiti na ovaj naฤin: 2*num gdje je num=1, zatim 2*1=2 pa ฤ‡e se vrijednost dva ispisati. To ฤ‡e se nastaviti sve dok vrijednost num ne postane 10. Nakon te petlje ฤ‡e se prekinuti i izvrลกit ฤ‡e se izjava koja je odmah nakon petlje. U ovom sluฤaju vratite 0.

For petlja u C

For petlja je uฤinkovitija struktura petlje u 'C' programiranju. Opฤ‡a struktura sintakse for petlje u C-u je sljedeฤ‡a:

Sintaksa petlje For u C-u

for (initial value; condition; incrementation or decrementation ) 
{
  statements;
}
  • Poฤetna vrijednost for petlje izvodi se samo jednom.
  • Uvjet je Booleov izraz koji testira i usporeฤ‘uje brojaฤ s fiksnom vrijednoลกฤ‡u nakon svake iteracije, zaustavljajuฤ‡i for petlju kada se vrati false.
  • Poveฤ‡anje/smanjenje poveฤ‡ava (ili smanjuje) brojaฤ za postavljenu vrijednost.

Sljedeฤ‡i program ilustrira for petlju u primjeru C programiranja:

#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;
}

Izlaz:

1
2
3
4
5
6
7
8
9
10

Gornji program ispisuje niz brojeva od 1-10 koristeฤ‡i for petlju.

For petlja u C
Za petlju u C programiranju
  1. Proglasili smo a varijabla int tipa podataka za pohranu vrijednosti.
  2. U for petlji, u dijelu inicijalizacije, dodijelili smo vrijednost 1 varijabli broj. U dijelu uvjeta specificirali smo naลก uvjet, a zatim dio poveฤ‡anja.
  3. U tijelu petlje imamo funkciju ispisa za ispis brojeva u novi red u konzoli. Imamo vrijednost jedan pohranjenu u broju, nakon prve iteracije vrijednost ฤ‡e se poveฤ‡ati i postat ฤ‡e 2. Sada varijabla broj ima vrijednost 2. Uvjet ฤ‡e se ponovno provjeriti i buduฤ‡i da je uvjet istinit, petlja ฤ‡e se izvrลกiti, a na ekranu ฤ‡e ispisati dva. Ova petlja ฤ‡e se nastaviti izvrลกavati sve dok vrijednost varijable ne postane 10. Nakon toga, petlja ฤ‡e biti prekinuta, a niz od 1-10 ฤ‡e biti ispisan na ekranu.

U C-u, for petlja moลพe imati viลกe izraza odvojenih zarezima u svakom dijelu.

Na primjer:

for (x = 0, y = num; x < y; i++, y--) { 
  statements; 
}

Takoฤ‘er, moลพemo preskoฤiti izraz poฤetne vrijednosti, uvjet i/ili inkrement dodavanjem toฤke-zareza.

Na primjer:

int i=0;
int max = 10;
for (; i < max; i++) {
  printf("%d\n", i);
}

Primijetite da petlje takoฤ‘er mogu biti ugnijeลพฤ‘ene tamo gdje postoji vanjska petlja i unutarnja petlja. Za svaku iteraciju vanjske petlje, unutarnja petlja ponavlja cijeli ciklus.

Razmotrite sljedeฤ‡i primjer s viลกe uvjeta u for petlji, koji koristi ugnijeลพฤ‘enu for petlju u C programiranju za izlaz tablice mnoลพenja:

#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 */
}}

Izlaz:

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

Gnijeลพฤ‘enje for petlji moลพe se izvrลกiti do bilo koje razine. Ugnijeลพฤ‘ene petlje trebaju biti odgovarajuฤ‡e uvuฤene kako bi kod bio ฤitljiv. U nekim verzijama 'C' ugnijeลพฤ‘ivanje je ograniฤeno na 15 petlji, ali neke daju viลกe.

Ugnijeลพฤ‘ene petlje uglavnom se koriste u aplikacijama s nizovima ลกto ฤ‡emo vidjeti u daljnjim uputama.

Naredba Break u C

Naredba break koristi se uglavnom u izjava prebaciti. Takoฤ‘er je korisno za trenutno zaustavljanje petlje.

Razmatramo sljedeฤ‡i program koji uvodi prekid za izlaz iz while petlje:

#include <stdio.h>
int main() {
int num = 5;
while (num > 0) {
  if (num == 3)
    break;
  printf("%d\n", num);
  num--;
}}

Izlaz:

5
4

Nastavak izjave u C

Kada ลพelite preskoฤiti na sljedeฤ‡u iteraciju, ali ostati u petlji, trebali biste koristiti naredbu continue.

Na primjer:

#include <stdio.h>
int main() {
int nb = 7;
while (nb > 0) {
  nb--;
  if (nb == 5)
    continue;
 printf("%d\n", nb);
}}

Izlaz:

6
4
3
2
1

Dakle, vrijednost 5 je preskoฤena.

Koju petlju odabrati?

Odabir petlje uvijek je teลพak zadatak za programera, za odabir petlje uฤinite sljedeฤ‡e korake:

  • Analizirajte problem i provjerite zahtijeva li petlju prije testiranja ili nakon testiranja.
  • Ako je potreban prethodni test, upotrijebite petlju za vrijeme ili za.
  • Ako je potreban naknadni test, upotrijebite do-while petlju.

Rezime

  • Definirajte petlju u C-u: Petlja je jedan od kljuฤnih pojmova na bilo kojem jeziku Programski jezik. Petlje u jeziku C implementirane su pomoฤ‡u uvjetnih naredbi.
  • Blok kontrolnih naredbi petlje u C-u izvrลกava se toliko puta dok uvjet ne postane laลพan.
  • Petlje u C programiranju postoje 2 vrste: kontrolirane ulazom i kontrolirane izlazom.
  • Navedite razne instrukcije upravljanja petljom u C: C programiranje nam daje 1) while 2) do-while i 3) upute za kontrolu petlje.
  • For i while petlje C programiranje su ulazno kontrolirane petlje u C jeziku.
  • Do-while je izlazna kontrolna petlja u C-u.

Saลพmite ovu objavu uz: