Aprendizaje del lenguaje C - Capítulo 5 Programación de estructura de bucle ②

¡Acostúmbrate a escribir juntos! Este es el día 11 de mi participación en el "Nuevo plan diario de Nuggets · Desafío de actualización de abril", haga clic para ver los detalles del evento .

anidamiento de bucles

Un cuerpo de bucle contiene otra estructura de bucle completa, que se denomina anidamiento de bucles . Se pueden anidar 3 tipos de bucles (bucle while, bucle do...while y bucle for) entre sí, tales como:

(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()
复制代码

Comparación de varios ciclos

  • Los 3 tipos de bucles se pueden usar para tratar el mismo problema; en general, se pueden reemplazar entre sí.
  • En los bucles while y do...while, la condición del bucle solo se especifica entre paréntesis después de while, por lo que para que el bucle finalice normalmente, debe incluirse en el cuerpo del bucle una declaración que haga que el bucle tienda a terminar (como como i++, i = i + 1 Esperar). Los bucles for pueden contener operaciones en la expresión 3 que hacen que el bucle finalice.
  • Con los bucles while y do...while, la inicialización del recorrido del bucle debe realizarse antes de la declaración del bucle. La instrucción for también puede completar la inicialización de variables en la expresión 1
  • while, do...while和for循环都可以用break语句跳出循环,用continue语句结束本次循环。

Cambiar el estado de ejecución del bucle

  • Terminar un bucle antes de tiempo con una declaración de ruptura

La forma general de la instrucción break :

break;
复制代码

El efecto es hacer que el proceso salte fuera del cuerpo del ciclo y luego ejecutar la declaración debajo del cuerpo del ciclo.

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

  • Utilice la declaración de continuación para finalizar el bucle antes de tiempo

La forma general es:

continue;
复制代码

Efecto: terminar este ciclo antes de tiempo y luego ejecutar el siguiente ciclo

  • Diferencia entre sentencia break y sentencia continue※
    • La instrucción continuar solo finaliza el bucle actual, no la ejecución de todo el bucle.
    • La instrucción break finaliza todo el proceso del bucle y ya no juzga si se han establecido las condiciones para ejecutar el bucle.

Ejemplo de un programa de bucle

  • Ingrese dos enteros positivos m y n, encuentre su máximo común divisor y mínimo común múltiplo

  • Muestra todos los "números de narcisos", el llamado "número de narcisos" se refiere a un número de 3 dígitos cuya suma cúbica de los dígitos es igual al número en sí. Por ejemplo, 153 es el número de narcisos porque 153 = 1³ + 5³ + 3³.

  • Usa la dicotomía para encontrar las raíces de la siguiente ecuación en (-10, 10): 2x³ - 4x² + 3x - 6 = 0

Supongo que te gusta

Origin juejin.im/post/7085026059929780261
Recomendado
Clasificación