La Red de Conocimientos Pedagógicos - Currículum vitae - ¡Entra el maestro del lenguaje C! Explique la respuesta a la pregunta sobre el lenguaje del caso de cambio.

¡Entra el maestro del lenguaje C! Explique la respuesta a la pregunta sobre el lenguaje del caso de cambio.

¡Déjame ajustar el formato contigo primero!

int x=0, y=2, z = 3;

Interruptor (x)

{

Caso 0:

Cambiar (y==2)

{

caso 1:printf(" * "); break;

Caso 2: printf(" % "); descanso;

}

Caso 1: cambiar (z)

{

caso 1:printf (" ");

Caso 2: printf(" ");

Caso 3: printf(" # "); p> p>

main()

{

//2473

//668977

int c;

mientras((c=getchar())!='\n ')

{switch(c-'2 ')

{

Caso 0:

Caso 1: putchar(c+4);

Caso 2: putchar(c+4);

Caso 3 : putchar (c+3);

Valor predeterminado: putchar(c+2);

}

}

printf( " \ n ");

}

Pregunta 1:

Debido a que el resultado de switch(y==2) es verdadero, el valor real en C es 1, así que ejecuta.

caso 1:printf(" * ");

Break //Salga del interruptor más cercano.

Continuar ejecutando

Caso 1: switch(z)//El valor de z es 3, luego ejecuta el caso 3: printf(" # ");

El resultado final es: * #

Pregunta 2:

El programa sale cuando encuentra '\n', ingresa el carácter '2' y los números 0-9 en la tabla de códigos ASCII son adyacentes. Entonces se puede usar aquí como un valor numérico.

Entrada 2, el resultado del cambio (c-'2') es 0. Cuando el conmutador no encuentra una interrupción y finaliza, continuará ejecutándose, por lo que debería generar 66.

Ingrese 4, el resultado del cambio (C-'2') es 2 y luego ejecútelo directamente.

Caso 2: putchar(c+4); break; salida (' 4'+'4'): 8

Entrada 7, interruptor (c-'2 ') El el resultado es 5. Como no existe el caso 5, se ejecuta el valor predeterminado default:putchar(c+2). Break; salida(' 9'+'2'):9

Entrada 3, el resultado del cambio (c-'2') es 1. implementar.

Caso 1: putchar(c+4);

Caso 2: putchar(c+4); encuentra una interrupción para finalizar el cambio, por lo que genera: 77.

Se ha explicado detalladamente más arriba. Si aún no lo entiendes, puedes agregarme a Baidu.