Loopi jaoks:
Seda tsüklit on parem kasutada, kui korduste arv on eelnevalt kindlaks määratud. See silmus sisaldab kolme osa. Esimest osa kasutatakse initsialiseerimismuutuja määramiseks kohast, kust silmus algab, teist osa kasutatakse lõpetamistingimuse määramiseks, mis määrab silmuse korduste arvu ja kolmandat osa kasutatakse initsialiseerimismuutuja suurendamiseks või vähendamiseks lõpetamiseks silmus.
Süntaks:
for (initsialiseerimine; tingimus; juurdekasv / vähenemine)avaldused
Näide 1: ühe tingimusega silmuse jaoks
Tingimusi saab loopi jaoks rakendada erineval viisil. Sest silmus võib sisaldada ühte tingimust, mitut tingimust ja ühtegi tingimust. Järgmine näide näitab ühe tingimusega silmuse kasutamist. Siin korratakse ujuva arvu massiivi, kasutades silmuseks. Silmus kordab 5 korda ja prindib iga massiivi elemendi väärtuse.
# kaasataint main ()
// Deklareeri ujukarvude massiiv
ujukhind [6] = 870.45, 345.90, 209.45, 200.45, 543.67, 450.69;
// Prindi massiivi iga element silmuseks
jaoks (int n = 0; n<=5;n++)
printf ("%.2f \ n ", hind [n]);
tagastama 0;
Näide 2: mitme tingimusega silmuse jaoks
Järgmine näide näitab mitme tingimusega silmuse kasutamist. Lingis kasutatakse kahte initsialiseerivat muutujat x ja y. OR-loogikaga kasutatakse lõpetamistingimusena kahte tingimust. Kui x väärtus on suurem kui 30 või y väärtus on väiksem kui 5, siis silmus lõpeb, vastasel juhul printib see väärtused x ja y.
# kaasataint main ()
// Deklareerige muutujad intialiseerimiseks
int x, y;
// Trükkige x ja y väärtused, kuni tingimused vastavad tõele
jaoks (x = 50, y = 10; x> 30 || y < 5; x = x - 5,y++)
printf ("% d,% d \ n", x, y);
tagastama 0;
Näide 3: Pesitud silmuse jaoks
Kui for-silmus kasutab teise jaoks loop-i, siis nimetatakse seda tsükli pesaks. Esimene silmus kordub viis korda ja teine silmus kordab 8 korda. Kui muutuja i ja j väärtus on võrdne, prinditakse mõlema muutuja väärtus.
# kaasataint main ()
// Kordage silmus 5 korda
jaoks (int i = 1; i<6; i++)
// Kordage silmus 8 korda
jaoks (int j = 1; j<9; j++)
// Kui mõlemad on võrdsed, printige i ja j väärtus
kui (i == j)
printf ("% d,% d \ n", i, j);
tagastama 0;
samas silmus:
Initsialiseerimismuutuja määratletakse enne loopi ajal ja lõpetamistingimus kontrollitakse enne tsüklisse sisenemist. Sel põhjusel nimetatakse silmust samal ajal sisenemise kontrollimiseks. Silmus lõpeb, kui tingimus tagastab vale.
süntaks:
while (tingimus)avaldused
Näide 4: while loop konkreetse teate printimiseks
Järgmine näide näitab while-loopi kasutamist. Muutujat n kasutatakse silmuse loendurina ja silmus kordub 3 korda. Iga väärtuse n jaoks prinditakse konkreetne sõnum. Sellele trükitakse “Tere hommikust” ühele, “Tere pärastlõunat” kahele ja “Head õhtut” kolmele.
# kaasataint main ()
// Muutuja initsialiseerimine
int n = 1;
// Kontrollige seisukorda
samas (n <= 3)
// Printige sõnum n väärtuse põhjal
kui (n == 1)
printf ("Tere hommikust \ n");
muul juhul (n == 2)
printf ("Tere pärastlõunal \ n");
muud
printf ("Head õhtut \ n");
// Suurendage muutujat
n ++;
tagastama 0;
Do-while silmus:
See silmus töötab nagu loopi ajal, kuid lõpetamise tingimust kontrollitakse pärast tsükli sisestamist. Sel põhjusel nimetatakse seda väljumisega juhitavaks silmuseks. Kuna see tsükkel kontrollib tingimust hiljem, täidab see lauseid vähemalt ühe, isegi kui tingimus tagastab tõese või vale.
Süntaks:
teeavaldused
while (tingimus)
Näide 5: arvu ruudu leidmiseks tehke silmust
Järgmine kood võtab kasutajalt numbri ja saab teada numbri ruudu väärtuse, kuni sisestatud sisend on suurem kui 10. Do-while silmus kontrollib alati tsükli lõpus olekut. Niisiis, ühe numbri ruutväärtus tuleb välja printida ja seisundit kontrollitakse hiljem.
# kaasataint main ()
int n, tulemus;
tee
// Võtke sisendiks number
printf ("Sisestage number:");
scanf ("% d", & n);
// Uuri numbri ruut
tulemus = n * n;
// Prindi tulemus
printf ("% d ruut on% d \ n", n, tulemus);
ajal (n < 10);
tagastama 0;
Proovige ise:
- Kirjutage C-programm kõigi paarisarvude 10–50 summa arvutamiseks.
- Kirjutage C-programm, võtke arvuks 3 numbrit ja printige numbrite summa. [kui sisend on 123, siis väljundiks on 6].
- Massiivielementide vastupidises vormis printimiseks kirjutage C-programm.
- Kirjutage C-programm, et kuvada kasutajalt võetud 10 positiivse arvu ruutjuur.
- 50–100 summa arvutamiseks kirjutage C-programm.
Järeldus:
Silmade kasutamine on kohustuslik igasuguse lihtsa või keeruka probleemi lahendamiseks. See artikkel näitab mõningaid C-tsüklite kasutusviise. Kuid C-s on palju muid silmuseid, näiteks lõpmatu silmus, katkestuslausega silmus, jätkamislausega silmus jne. Sama probleemi saab lahendada, kasutades mõnda mainitud silmusest ühte. Kooder valib probleemi põhjal silmuse, et kood oleks tõhus.