Tema especial de programación en lenguaje C, maestría
La explicación comienza a continuación:
La diferencia en la pregunta es ①b=2, c = 3; ②b= 3, c = 2; esta diferencia conducirá directamente a la diferencia en un valor en la operación del valor m
②El problema es fácil de entender, a = b gtc→a = 3 gt; 2, se establece la condición, a = 1; d = d e = 12; m = a amp ampd, los valores de a (1), d (12) son todos verdaderos, m = 1; el resultado impreso de ② es: 1, 3, 2, 12, 7, 1;
1, a = b gtc→a = 2 gt; El problema comenzará después de eso), operación lógica AND (; amp), primero a la izquierda (a = b > c), si el resultado de la izquierda es verdadero, continúe calculando el resultado de la derecha. Pero si el resultado de la izquierda es falso, el resultado de la derecha no afectará el resultado general de la operación AND, por lo que no se realizará la operación de la derecha. El resultado está en ①, directamente a = 0, M = 0, d = d e no se ejecuta, por lo que D permanece sin cambios y el resultado se imprime como 0, 2, 3, 5, 7, 0.