Constellation Knowledge Network - Preguntas y respuestas sobre la interpretación de los sueños - Cómo escribir un programa de lotería en lenguaje C

Cómo escribir un programa de lotería en lenguaje C

Simplemente modifíquelo usted mismo. . .

/*

Ingrese y almacene la información de los participantes de la lotería por adelantado, principalmente a través de la matriz de estructura. Cada registro está representado por una estructura, que incluye número de identificación, nombre y número de teléfono. , dirección, etc. información. Cuando comienza la lotería, el número de identificación del participante parpadea rápidamente en la pantalla. Presione cualquier tecla para detener el parpadeo y la información del ganador se muestra en la pantalla. Se pueden sortear repetidamente varios primeros premios, segundos premios y terceros premios.

Diseñar e implementar las siguientes funciones:

(1) Entrada: completar el ingreso de información de la lotería;

(2) Eliminar: eliminar información de la lotería;< /p >

(3) Modificación: Los datos ingresados ​​se pueden editar y modificar nuevamente

(4) Visualización: Muestra la información de todos los ganadores

(5) Sorteo:

A. Saque 1 primer premio y no podrá volver a sortear;

B. Saque dos segundos premios y no podrá volver a sortear; C. Sorteo de 5 terceros premios Una vez finalizado el sorteo no se pueden sortear más;

(6) Salir del programa. */

#incluye

#incluye

#incluye

#incluye

#incluye

#includes

#define número de pedido 10

estructura typedef tag_award

{

char ID[20];

char nombre[20];

char telNo[20];

char dirección[50];

} PREMIO

un guardián * un guardián = new un guardián[un guardián _ NUM];

int primer _ premio[1]= {-1 }

int segundo_premio[ 2] = {-1,-1};

int tercer_premio[5] ={-1,-1,-1,-1,-1};

int adjudicador _ num = 0;

Información_login() no válida

{

if(adjudicador _ num>=cantidad del pedido)

{

PREMIO * nuevo _ un guardián = nuevo un guardián[un guardián _ NUM+un guardián _ NUM];

memcpy(new_awarder, adjudicador, un guardián _ num * sizeof(un guardián ));

Eliminar pedido;

adjudicador = nuevo _ adjudicatario

}

Printf("Número de identificación:");

scanf("%s ", adjudicador[awarder_num].ID);

printf(" nombre:");

scanf( "%s ", adjudicador[awarder_num].

Printf("número de teléfono:");

scanf("%s ", adjudicador[awarder_num]. telNo);

Printf("Dirección particular:");

scanf("%s ", adjudicador[awarder_num].Dirección);

adjudicador _ num++; p>}

void info_delete()

{

char name[20];

Printf(" Ingrese el nombre de la lotería para ser eliminado: ");

scanf("%s ", nombre);

for(int I = 0; i<awarder_numi++)

{

if (strcmp(awarder[i].name, name) == 0)

{

Printf("Usted elige eliminar La información de la lotería es la siguiente: \n ");

Printf ("Número de identificación: %s\n ", adjudicador[i]. ID);

Printf ("Nombre: %s\n ", adjudicador[i]. Nombre

Printf ("Número de teléfono: %s\n ", adjudicador[); i]. telNo);

Printf("Dirección particular: %s\n ", adjudicador[i].

dirección);

Rotura;

}

}

if(i == cantidad del pedido)

{

Printf("¡No se encontró la lotería que ingresaste! \ n "

}

Otros

{

char c;

Printf("¿Está seguro de que desea eliminar? (Y//N)");

fflush(stdin);

scanf("%c ", & ampc);

if(c == 'Y' || c == 'y ')

{

PREMIO * nuevo_premio = nuevo PREMIO[PREMIO_num-1];

if(i<=0)

memcpy(nuevo_premio, adjudicador+1, tamaño de(PREMIO)*( ADJUDICADOR _ num-1));

else if (I>=número de pedido-1)

memcpy(new_award, adjudicador, sizeof(ADJUDICADOR)*(ADJUDICADOR _ num -1 ));

Otro

{

memcpy(new_award, Awarder, sizeof(AWARDER)* I);

memcpy (new_award +i, adjudicador+i+1, tamaño de(ADJUDICADOR)*(ADJUDICADOR _ num-I-1));

}

adjudicador _ num-;

Eliminar pedido;

premio = nuevo _ premio

}

}

}

anular info_modify ()

{

char name[20];

Printf("Ingrese el nombre de la lotería que desea modificar:");

scanf("%s ", nombre);

for(int I = 0; i & ltawarder _ numi++)

{

if (strcmp ( adjudicador[i].nombre, nombre) == 0)

{

Printf("La información de la lotería que seleccionó es la siguiente:\ n ");

Printf ("Número de identificación: %s\n ", adjudicador[i]. ID);

Printf ("Nombre: %s\n ", adjudicador[i]. Nombre

Printf ("Número de teléfono: %s\n ", adjudicador[); i].telNo);

Printf("Dirección particular: %s\n ", adjudicador[i].Dirección);

Pausa;

}

}

if(i == cantidad del pedido)

{

Printf("¡No se encontró la lotería que ingresó!\ n ");

}

Otros

{

Printf("Ingrese nueva información para esta lotería:\ n ") ;

Printf("Número de tarjeta de identificación:");

scanf("%s ", comando[i].ID);

printf(" nombre: ");

scanf("%s ", comando[i]. Nombre);

Printf("Número de teléfono:");

scanf("%s ", comando[i].telNo);

Printf("Dirección particular:");

scanf("%s", comando[i].

dirección);

}

}

bool check_over(int cur_award, int AwarderNo)

{

if(awarderNo == 1)

{

if(cur_award == first_award[0])

Devuelve verdadero

}

else if(awarderNo & lt; = 3)

{

if(cur_award == first_award[0])

Devuelve verdadero

for(int I = 0;i<awarderNo-1;i++)

if (recompensa actual == segunda recompensa[i])

Devuelve verdadero

}

else if(awarderNo <= 8)

{

if(cur_award == first_award[0] )

Devuelve verdadero

for(int I = 0;i<2;i++)

if (recompensa actual == segunda recompensa[i])

Devuelve verdadero

for(I = 0;i<awarderNo-3;i++)

if(cur_award ==third_award[i])

Devuelve verdadero

}

Devuelve falso

}

Recompensa no válida()

{

if( Awarder _ num & lt; 8)

{

Printf("El número de personas es demasiado pequeño, ¡agregue suficientes personas antes de dibujar!\ n ");

Regresar;

}

srand((long) time(0));

char hit _ id[20];

printf("\nEmpieza a sacar el primer premio (1), presiona cualquier tecla para comenzar...\n");

getch();

And(! kbhit())

{

primer _ premio[0]= rand()% un guardián _ num;

memcpy(hit_id , adjudicador[primer_premio[ 0]].ID,18);

printf(" \r ");

printf("\r %s ", pulsa _ id

<); p>}

printf(" \ n \ nEmpieza a sacar el segundo premio (2)"

for(int I = 0; I<2 ;i++)

<); p>{

printf("\nEl %d segundo premio, presiona cualquier tecla para comenzar...\n ",I+1);

getch();

Y (! kbhit())

{

segundo _ premio[I]= rand()% un guardián _ num;

mientras(verificar _ sobre(segundo _ premio[I], 1+i))

segundo _ premio[I]= rand()% un guardián _ num;

memcpy(hit_id, adjudicador[segundo_premio[i] ].

ID, 18);

printf(" \r ");

printf("\r %s ", hit _ id);

}

}

printf(" \ n \ nEmpieza a sacar el tercer premio (5)"

for(I = 0;I<5;i++ )

{

printf("\nEl %d tercer premio, presiona cualquier tecla para comenzar...\n ",I+1);

getch() ;

Y(!kbhit())

{

tercer _ premio[I]= rand()% un guardián _ num ;

while(check _ over(tercer _ premio[I], 3+i))

tercer _ premio[I]= rand()% un guardián _ num;

memcpy(hit_id, adjudicador[tercer_premio[i]].ID, 20);

printf("\r");

printf("\r %s ", hit_id );

}

}

}

void info_show()

{

Printf("Ganador del primer premio:\ n ");

Printf("\t número de identificación: % s \ n ",Premiador [primer _ premio [0 ]]. id

Printf ("\ tname:% s \ n ", Adjudicador [primer _ premio [0]]. Nombre

printf (" \ t Número de teléfono: % s \ n "); , Adjudicador [first_award [0]].telno);

printf("\tDirección particular: % s\n ", Adjudicador [first_award [0]]. ]]. Dirección);

Printf("Ganador del segundo premio:\ n ");

for(int I = 0; i<2;i++)

{

Printf ( "%dGanador del segundo premio:\ n ");

Printf("\tNúmero de ID:% s\ n ",Premiador [segundo _ premio [i]]. id

Printf ("\tname:%s\n", Adjudicador [segundo_premio[i]]. nombre);

printf("\tNúmero de teléfono:% s\n",Premiador[segundo_premio[i]].telno);

printf("\tDirección particular: % s \ n ", Premiador [segundo _ premio [i]]. Dirección);

}

Printf("Ganador del tercer premio:\ n ");

for(int I = 0;I<5;i++)

{

Printf ("%dGanador del tercer premio:\ n ");

Printf(" \tID número:% s\n ",Premiador [tercer _ premio [i]].id);

Printf("\tname:% s\n" ",Premiador[tercer_premio[i]] .nombre);

printf("\tNúmero de teléfono:% s\n",Premiador[tercer_premio[i]].telno);

printf(" \tDirección particular: % s \ n ", Adjudicador [Tercer _ Premio [I]]. Dirección);

}

}

/*Información inmediata*/

bool rise()

{

printf("\nIngrese el código de operación que necesita:\ n "); t1. Enter: Ingresa la información de la lotería; \n ");

Printf("\t2. Delete: Elimina la información de la lotería; \n ");

Printf("\ t3.

Modificación: Permitir que los datos ingresados ​​sean editados y modificados nuevamente;\n ");

Printf("\t4. Lotería: ¡Inicia la lotería!\n ");

Printf (" \t5. Display: muestra información sobre todos los ganadores;\n ");

Printf("\t6. Exit.\n ");

printf(" = = > ;));

operación int;

fflush(stdin);

scanf("%d ", & amp operación);

Interruptor (operación)

{

Caso 1:

info_log in();

Interrupción;

Caso dos:

info_delete();

Pausa;

Caso tres:

info_modify(

Pausa;

Caso 4:

premio();

Pausa

Caso 5:

info_show();

Pausa;

Caso 6:

Devuelve falso

Valor predeterminado:

Break;

}

printf("\nLa operación se ha completado.

\ n ");

devuelve verdadero

}

void main()

{

mientras( subir());

}

上篇: ¿Dónde se realiza la inspección de botas y guantes aislantes en Chengdu? 下篇: El nombre de un niño nacido el 5 de agosto de 2024 pertenece a Baby Dragon.
Artículos populares