Darsliklar C Break va Continue

C C Break va Continue

break va continue — sikllarning ichki oqimini boshqaradigan ikki operator. Ba’zan siklni shart tugashini kutmasdan to’xtatish, ba’zan esa bitta takrorni o’tkazib yuborish kerak bo’ladi. Aynan shu ikki ehtiyoj uchun break va continue yaratilgan.

breaksiklni butunlay to’xtatib, undan chiqadi. continue — joriy takrorni yakunlab, keyingisiga o’tadi.

break — siklni to’xtatish

break operatori siklni shart tugashini kutmasdan darhol to’xtatadi:

#include <stdio.h>

int main(void) {
    for (int i = 1; i <= 100; i++) {
        if (i == 4)
            break;
        printf("%d ", i);
    }
    printf("\n");
    return 0;
}
1 2 3 

Sikl i <= 100 gacha ketishi kerak edi, ammo i to’rtga yetganda break uni uzib qo’ydi. Bu, masalan, ro’yxatdan kerakli elementni topgach izlashni to’xtatishda foydali.

continue — bir qadamni o’tkazib yuborish

continue joriy takrorni to’xtatib, keyingisiga o’tadi. Sikl to’xtamaydi:

#include <stdio.h>

int main(void) {
    for (int i = 1; i <= 6; i++) {
        if (i == 3)
            continue;
        printf("%d ", i);
    }
    printf("\n");
    return 0;
}
1 2 4 5 6 

E’tibor bering: 3 chiqmadi. i uchga tengida continue printf gacha yetmasdan siklni keyingi takrorga o’tkazdi.

break va continue farqi

Ikkovining farqini jadvalda aniq ko’ramiz:

Operator Ta’siri Sikl davom etadimi?
break siklni butunlay to’xtatadi Yo’q
continue joriy takrorni o’tkazadi Ha

Amaliy misol: juft sonlar

Ikkovini birlashtirib, foydali natija olamiz — 1 dan 10 gacha faqat juft sonlarni chiqaramiz:

#include <stdio.h>

int main(void) {
    for (int i = 1; i <= 10; i++) {
        if (i % 2 != 0)
            continue;   /* toq bo'lsa o'tkazib yuboramiz */
        printf("%d ", i);
    }
    printf("\n");
    return 0;
}
2 4 6 8 10 

Bu yerda continue toq sonlarni o’tkazib yubordi, natijada faqat juftlari chiqdi. Qoldiq operatori (%) bilan birga bu naqsh juda ko’p ishlatiladi.

Xulosa

Bu bo’limda break bilan siklni to’xtatish, continue bilan takrorni o’tkazish va ularning farqini ko’rib chiqdik. Bu ikki operator sikllar ustidan nozik nazorat beradi. Keyingi darsda massivlarga o’tamiz.