¡Estoy buscando un ensayo sobre un juego de adivinanzas en lenguaje C, de unas 1000 palabras~! ! ! necesidad urgente. . Espero que todos puedan ayudar.

Hagamos un juego...

Las reglas del juego se refieren a Adivinar números en Wenquxing:

Ingrese cuatro números únicos (separados por espacios) y presione para regresar a la pantalla de resultados. En la parte posterior,

"¿Cuál es la tabla? ¿Respuesta? B", la posición y el número de los cuatro números son correctos como A, la misma posición del número es diferente como B,

4 A Cuando 0 B es correcto, hay 8 oportunidades en cada ronda.

Por ejemplo, si los cuatro números originales son 1234, entonces

1234 4 A 0 B

5678 0 A 0 B son incorrectos.

1243 2 A 2 B 3 y 4 son correctos pero en la posición incorrecta.

Una vez que comprenda las reglas, será fácil comenzar. Quizás aún no tengas ni idea. No importa, simplemente hazlo paso a paso.

1. Primero, ¿qué quieres hacer en tu juego?

El jugador ingresa cuatro números, verifica la relación entre los cuatro números y la respuesta correcta, y proporciona un "X A X B".

Indica al jugador e ingresa... hasta que el jugador adivine correctamente u ocho veces.

2. ¿Qué recursos se necesitan para el juego?

Este juego no requiere nada especial, solo printf y scanf para obtener información.

Entonces al comienzo del programa:

# include ltstdio.h gt

Agrega entrada y salida estándar, sin esto Turbo C no sabe dónde printf y scanf viene de dónde venir.

Bien, comencemos a programar. ...

main(){

}

Primero escribe esta función. Esto se llama función principal, y solo hay un programa, además. llamada función de entrada de programa.

Aquí es donde su programa comienza la ejecución. )

(Las siguientes operaciones están todas en main())

Establezca cuatro variables para almacenar la respuesta correcta: (También puede obtener un valor inicial)

int a1, a2, a3, a4;

Luego establece cuatro variables para almacenar la entrada del jugador:

int b1, b2, b3, B4;

Establezca el número de conjeturas para la variable y especifique el valor inicial:

int n = 0

Establezca dos variables que almacenen el número de resultados a y b:

int cA, cB;

Una vez completada la preparación, establezca la respuesta correcta:

a 1 = 3

a2 = 5; p>

a3 = 9;

a4 = 7;

Por supuesto, te quejarás de que la respuesta correcta es fija. No importa. Aquí se explica cómo crear un efecto aleatorio. Tome su tiempo.

Piensa detenidamente en todo el flujo del juego. ...

Se ve así:

Ejecución del bucle:

Entrada;

Compara la respuesta correcta;

Mensaje de salida;

Juzgue si adivinó correctamente;

Sí: muestra la victoria y sale del ciclo, No: ignorar;

Doblar por 1;

p>

Juzgue si el número de veces excede;

Sí: falla en la pantalla, salga del ciclo;

El ciclo finaliza;

Entonces, para que sea más fácil de entender, utilizamos un bucle infinito, pero debemos prestar atención a una cosa: ¡debe haber una declaración para finalizar el bucle!

Pausa; esto es una declaración.

Entonces:

mientras(1){

...

Descanso;

...

}

Solo escríbelo.

Y (XX){YYYY} funciona así:

Si XX es 0 (verdadero)

No:

Ejecutar YYYY

Sí: salga del bucle

Compruebe nuevamente si XX no es 0.

...

Pero debes saber: romper te obligará a retirarte de este círculo.

Está bien, eso es todo:

printf("\n\t¡Adivina el número!\n \n " /*Imprime algunos consejos*/

While(1){ /*Iniciar la entrada del usuario y la salida del programa*/

printf("d:", n 1 /*Imprimir la cantidad de entrada actual*/

scanf); ("d d d d", ampb1. b2 and ampb3 and ampB3);

/*No sé por qué se agrega B2 antes de b1. , primero piénselo, scanf será así*/

cA = 0;

cB = 0; /*La comparación está por comenzar, así que establezca el resultado en 0; */

/*Al comienzo de la comparación, usamos un montón de ifs para hacer cosas por nosotros*/

/*Aunque esto es un poco engorroso, ¿quién nos dijo? que somos novatos? Pero déjame decirte que esta expresión es la eficiencia más alta*/

if(a 1 = = b 1)ca;

if(a2 = = B2)ca;

if(a3 = = B3)ca;

if(a4 = = B4)ca /*Comprueba la cantidad agregada una por una*/

if( a 1 = = B2 | | a 1 = = B3 | a 1 = = B4)c b ;

si(a2 = = b 1 | p>

si(a3 = = b 1 | | a3 = = B2 | | a3 = = B4)c b ;

si(a4 = = b 1 | | a4 = = B2 | | a4 = = B3)c b ;

/*El número de B obtenido a través de una inspección minuciosa*/

/*Por supuesto, debes asegurarte de que la entrada del jugador sea diferente, de lo contrario causará problemas. Broma*/

/* Fin de la comprobación y comparación*/

/*Mensaje de impresión*/

printf("\t\td A d B\n ", cA, cB);

/*Juzga si ganarás*/

if(cA == 4){

printf(" \ n \ t ¡Listo! \ n "

getch(); /*getch() se usa para ingresar un carácter, no se requiere entrada y no se mostrará en la pantalla*/

/*Generalmente se usa para pausar el program*/

Romper; /*Salir del bucle*/

}

/*Aumentar el número de veces en uno*/

n;

/*Número de sentencias*/