Apprentissage du langage C - Chapitre 5 Programmation de la structure en boucle ②

Prenez l'habitude d'écrire ensemble ! C'est le 11ème jour de ma participation au "Nuggets Daily New Plan · April Update Challenge", cliquez pour voir les détails de l'événement .

imbrication de boucles

Un corps de boucle contient une autre structure de boucle complète, appelée imbrication de boucles . 3 types de boucles (boucle while, boucle do...while et boucle for) peuvent être imbriquées les unes dans les autres, telles que :

(1) while
while() {
    ...
    while() { // 内层循环
        ...
    }
}

(2do...while
do {
    ...
    do { // 内层循环
        ...
    } while()
} while()

(3for
for(;;) {
    for(;;) { // 内层循环
        ...
    }
}

(4) while, do...while
while(){
    ...
    do{ // 内层循环
        ...
    } while()
}

(5for, while // ※
for(;;) {
    ...
    while () { // 内层循环
        ...
    }
}

(6) do...while, for
do {
    ...
    for (;;) { // 内层循环
        ...
    }
} while()
复制代码

Comparaison de plusieurs cycles

  • Les 3 types de boucles peuvent être utilisées pour traiter le même problème, en général, elles peuvent se remplacer
  • Dans les boucles while et do...while, la condition de la boucle n'est spécifiée entre parenthèses qu'après while, donc pour que la boucle se termine normalement, une instruction qui fait que la boucle tend à se terminer doit être incluse dans le corps de la boucle (comme comme i++, i = i + 1 Wait). Les boucles for peuvent contenir des opérations dans l'expression 3 qui provoquent la fin de la boucle
  • Avec les boucles while et do...while, l'initialisation du parcours de la boucle doit être effectuée avant l'instruction loop. L'instruction for peut également terminer l'initialisation des variables dans l'expression 1
  • while, do...while和for循环都可以用break语句跳出循环,用continue语句结束本次循环。

Changer l'état de l'exécution de la boucle

  • Terminer une boucle plus tôt avec une instruction break

La forme générale de l'instruction break :

break;
复制代码

L' effet est de faire sauter le processus en dehors du corps de la boucle, puis d'exécuter l'instruction sous le corps de la boucle

break语句只能用于循环语句和switch语句中,不能单独使用

  • Utilisez l'instruction continue pour terminer la boucle plus tôt

La forme générale est :

continue;
复制代码

Effet : terminer ce cycle plus tôt , puis exécuter le cycle suivant

  • Différence entre l'instruction break et l'instruction continue※
    • L'instruction continue ne termine que la boucle en cours, pas l'exécution de la boucle entière.
    • L'instruction break met fin à l'ensemble du processus de boucle et ne juge plus si les conditions d'exécution de la boucle sont établies

Exemple de programme en boucle

  • Entrez deux entiers positifs m et n, trouvez leur plus grand diviseur commun et leur plus petit commun multiple

  • Sortez tous les "nombres de jonquilles", le soi-disant "nombre de jonquilles" fait référence à un nombre à 3 chiffres dont la somme cubique des chiffres est égale au nombre lui-même. Par exemple, 153 est le nombre de jonquilles car 153 = 1³ + 5³ + 3³.

  • Utilisez la dichotomie pour trouver les racines de l'équation suivante en (-10, 10) : 2x³ - 4x² + 3x - 6 = 0

Je suppose que tu aimes

Origine juejin.im/post/7085026059929780261
conseillé
Classement