Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #ifdef _MSC_VER
- #define _CRT_SECURE_NO_WARNINGS
- #endif
- #include <stdlib.h>
- #include <stdio.h>
- #include <time.h>
- #include <string.h>
- typedef struct Jogador_s {
- char nome [50];
- int numero;
- int idade;
- char posicao [20];
- }Jogador_t;
- typedef struct node_Jogador_s {
- Jogador_t jogador;
- struct node_Jogador_s* next;
- }node_Jogador_t;
- typedef struct list_Jogador_s {
- node_Jogador_t* head;
- }list_Jogador_t;
- typedef struct Utilizador_s {
- char nome [50];
- char username [20];
- char password[20];
- list_Jogador_t Jogadores;
- }Utilizador_t;
- typedef struct node_Utilizador_s {
- Utilizador_t utilizador;
- struct node_Utilizador_s* next;
- }node_Utilizador_t;
- typedef struct list_Utilizador_s {
- node_Utilizador_t * head;
- }list_Utilizador_t;
- node_Jogador_t * new_Node_Jogador () {
- node_Jogador_t* node = NULL;
- node = (node_Jogador_t*) malloc (sizeof (node_Jogador_t));
- return (node);
- }
- node_Utilizador_t * new_Node_Utilizador () {
- node_Utilizador_t* node = NULL;
- node = (node_Utilizador_t*) malloc (sizeof (node_Utilizador_t));
- return (node);
- }
- void remove_Node_Utilizador (node_Utilizador_t* node) {
- if (node)
- free (node);
- }
- void remove_Node_Jogador (node_Jogador_t* node) {
- if (node)
- free (node);
- }
- list_Utilizador_t* new_List_Utilizador()
- {
- list_Utilizador_t* list;
- list = (list_Utilizador_t *) malloc (sizeof (list_Utilizador_t));
- list->head = NULL;
- return (list);
- }
- list_Jogador_t * new_List_Jogador () {
- list_Jogador_t* list;
- list = (list_Jogador_t *) malloc (sizeof (list_Jogador_t));
- list->head = NULL;
- return (list);
- }
- void criar_Utilizador (list_Utilizador_t* list, node_Utilizador_t* node){
- if (list->head != NULL)
- node->next = list->head;
- else node->next=NULL;
- list->head = node;
- }
- void criar_Jogador (list_Jogador_t* list, node_Jogador_t* node){
- if (list->head != NULL)
- node->next = list->head;
- else node->next=NULL;
- list->head = node;
- }
- node_Utilizador_t* verifica_Utilizador (list_Utilizador_t* list, node_Utilizador_t* node) {
- node_Utilizador_t* node1 = list->head;
- while (node1) {
- if ( strcmp(node1->utilizador.username,node->utilizador.username)==0 && strcmp(node1->utilizador.password,node->utilizador.password)==0){
- break;}
- else{
- node1=node1->next;}
- }
- return (node1);
- }
- int menuinicial () {
- int opcao;
- printf("\n\t Menu\n\n");
- printf("\n\t 1 - CRIAR CONTA");
- printf("\n\t 2 - LOGIN\n\n");
- scanf("%d", &opcao);
- return opcao;
- }
- int menujogador () {
- int opcao_jogador;
- printf ("\n\t JOGADORES \n\n");
- printf ("\n\t 1 - CRIAR JOGADOR");
- printf ("\n\t 2 - CONSULTAR JOGADORES");
- scanf ("%d", opcao_jogador);
- return opcao_jogador;
- }
- node_Utilizador_t* criar_conta_Utilizador () {
- printf("\n\t CRIAR CONTA \n\n");
- node_Utilizador_t* node_Utilizador = new_Node_Utilizador();
- printf("\t Insira Nome Completo: ");
- scanf (" %[^\n]%*c", &node_Utilizador->utilizador.nome);
- printf("\n\t Insira um Username: ");
- scanf ("%s", &node_Utilizador->utilizador.username);
- printf("\n\t Insira uma Password: ");
- scanf ("%s", &node_Utilizador->utilizador.password);
- }
- node_Jogador_t* criar_jogador (){
- printf ("\n\t CRIAR JOGADOR \n\n");
- node_Jogador_t* node_Jogador = new_Node_Jogador();
- printf("\t Insira Nome Completo: ");
- scanf (" %[^\n]%*c", &node_Jogador->jogador.nome);
- printf("\n\t Insira o numero do Jogador: ");
- scanf (" %[^\n]%*c", &node_Jogador->jogador.numero);
- printf("\n\t Insira a idade do Jogador: ");
- scanf (" %[^\n]%*c", &node_Jogador->jogador.idade);
- printf("\n\t Insira a posicao do Jogador: ");
- scanf (" %[^\n]%*c", &node_Jogador->jogador.posicao);
- }
- node_Utilizador_t* login () {
- printf ("\n\t LOGIN \n\n");
- node_Utilizador_t* node_Utilizador;
- if(!node_Utilizador) printf("\tNome ou password errados\n");
- node_Utilizador = new_Node_Utilizador();
- printf("\n\t Insira um Username: ");
- scanf (" %s", &node_Utilizador->utilizador.username);
- printf("\n\t Insira uma Password: ");
- scanf (" %s", &node_Utilizador->utilizador.password);
- return node_Utilizador;
- }
- int main (void) {
- list_Utilizador_t* list_Utilizador = new_List_Utilizador();
- node_Utilizador_t* node_Utilizador = new_Node_Utilizador();
- list_Jogador_t* list_Jogador = new_List_Jogador();
- node_Jogador_t* node_Jogador = new_Node_Jogador();
- while (1) {
- int opcao = menuinicial();
- switch (opcao)
- {
- case 1:
- system("cls");
- node_Utilizador = criar_conta_Utilizador ();
- criar_Utilizador(list_Utilizador, node_Utilizador);
- break;
- case 2:
- do{
- system("cls");
- node_Utilizador = login ();
- node_Utilizador = verifica_Utilizador(list_Utilizador,node_Utilizador);
- }while (!node_Utilizador);
- int opcao_jogador = menujogador();
- switch (opcao_jogador) {
- case 1:
- system("cls");
- node_Jogador = criar_Jogador ();
- criar_Jogador(list_Jogador, node_Jogador);
- break;
- case 2:
- break;
- default:
- printf ("ATENCAO: Opcao Invalida!");
- break;
- }
- break;
- default:
- printf ("ATENCAO: Opcao Invalida!");
- break;
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement