int main(int argc, char *argv[]) { if(argc==5) { if(strcmp(argv[3],"-c")==0) ordenarCurso(argv[1],argv[2],argv[4],1); if(strcmp(argv[3],"-a")==0) ordenarCurso(argv[1],argv[2],argv[4],2); if(!(strcmp(argv[3],"-c")!=0 || strcmp(argv[3],"-a")!=0)) instrucoes(); } else if(argc==3) ordenarCurso(argv[1],argv[2],argv[4],3); else instrucoes(); libertalista(); }
int menu() { records(); //leitura do arquivo onde estao as pontuacoes. int opcao,i; printf("********************************************************************************\n"); printf("\t ** * * * ** * * ** *** * * * * * * \n "); printf("\t* * * ** * * * * * * * * * * * * * \n"); printf("\t* * * * * ** * * * * * * * * * * * \n"); printf("\t ** * * * * ** * ** * * * * * * * \n"); printf("********************************************************************************\n"); printf("\n\t\t\t Menu:\t \n\n \t\t\tJogar(1)\t \n \t\t\tSair(2)\t\n \t\t\tPontuacao(3)\t\n\t\t\tDicas(4)\t \n\n \t\t\tEscolha: "); scanf("%d",&opcao); switch(opcao) //opcoes do menu. { case 1: //começa o jogo. printf("Informe seu nome: "); scanf("%s", jogadores[5].nome); printf("\n\n"); jogo(jogadores); break; case 2: //finaliza o jogo. printf("\t\n Voce finalizou o jogo\n\n\tQue pena T-T\n\n"); return -1; case 3: //mostra as pontuaçoes. i = 0; printf("\n\n\t\tMelhores pontuacoes:\n\n"); while (i < 5) { printf("\t\t%s\t:%d\n", jogadores[i].nome, jogadores[i].p); i++; } printf("\n\n"); menu(); break; case 4: //Mostra as instruçoes. instrucoes(); break; } return 0; }
int main() { char res; int z; player lista = NULL; // Ponteiro de lista lista=recupera(lista); // recupera a lista dos jogadores do momento em que encerrou o jogo do{ do{ z = menu(); switch(z){ case 1:lista=novoJogo(lista);break; case 2:lista=carregarjogo(lista);break; case 3:lista=jogadores(lista);break; case 4:instrucoes();break; case 5:top1(lista);break; } }while(z!=6); do{ titulo(); imgJogo(); printf("\t Tem a certeza que pretende sair?\n\n\t\t sim[s]\tnao[n] \n\t\t\t "); res = getchar(); if(res == 's') { titulo(); printf("\n\n\n\n\n\t\t\t Made by:\n\n\t Rodolfo Lima 21170826 & Ricardo Dinis 21170949\n\n\n\n\n\t\tIsec 2010\\2011 Cadeira:Programacao\n\n\n"); grava_ficheiro(lista); // grava a lista dos jogadores antes de encerrar o jogo getchar(); return 0; } }while(res != 's' && res != 'n'); }while(res != 's'); }
int main(int argc, char *argv[]){ FILE *arq_entrada; /* associado ao arquivo de entrada */ FILE *arq_saida; /* associado ao arquivo de saida */ char delim[] = " \n";/*delimitadores dos tokens*/ char str[1001];/*string referente a cada linha*/ char *token;/*string referente a cada token*/ int tam; /* auxiliar */ palavra mapa_mem; /* mapa de memoria */ rotulo mapa_rot; /* mapa de rotulos */ nome lista_nom; /* lista de nomes */ endereco end = {0,0}; /* ponteiro de endereco */ arq_entrada = fopen(argv[1],"r");/*abre o arquivo para leitura*/ arq_saida = fopen(argv[2],"w");/*abre o arquivo para escrita*/ /* Inicializa mapa dos rotulos */ InicializaMapaRotulos(&mapa_rot); InicializaMapaMemoria(&mapa_mem); InicializaNomes(&lista_nom); /* PRIMEIRA LEITURA DO ARQUIVO - MAPA DE ROTULOS */ while(!feof(arq_entrada)){ /* Carrega o primeiro token da linha de entrada */ token = strtok(fgets(str,1000,arq_entrada),delim); while(token != NULL){ /* Calcula tamanho do token */ tam = strlen(token); /* Teste se eh diretiva (primeiro caracter eh '.') */ if(token[0] == '.'){ diretivas(token, &end, &mapa_mem, &lista_nom); } /* Teste se eh roluto (ultimo caracter eh ':') */ else if(token[tam-1] == ':'){ InsereRotuloFim(&mapa_rot,token,end); } /* Teste se eh comentario (primeiro caracter eh '#') */ else if(token[0] == '#'){ /* Percorre ate o fim da linha */ token = strtok(NULL,"\n"); } /* TESTAR SE EH NECESSARIO INTERPRETAR INSTRUCOES NA PRIMEIRA LEITURA */ else{ instrucoes(token, end, &mapa_mem, &mapa_rot); } token = strtok(NULL, delim); } } /* Ordena mapa de memoria */ OrdenaMapa(&mapa_mem); /* Volta ao inicio do arquivo e reseta o contador de posicao */ fseek(arq_entrada, 0, SEEK_SET); end.endereco = 0; end.pos = 0; /* SEGUNDA LEITURA DO ARQUIVO - MAPA DE MEMORIA */ while(!feof(arq_entrada)){ /* Carrega o primeiro token da linha de entrada */ token = strtok(fgets(str,1000,arq_entrada),delim); while(token != NULL){ /* Calcula tamanho do token */ tam = strlen(token); /* Teste se eh diretiva (primeiro caracter eh '.') */ if(token[0] == '.'){ diretivas(token, &end, &mapa_mem, &lista_nom); } /* Teste se eh comentario (primeiro caracter eh '#' */ else if(token[0] == '#'){ /* Percorre ate o fim da linha */ token = strtok(NULL,"\n"); } /* Se nao eh nenhum desses, eh uma instrucao */ else{ instrucoes(token, end, &mapa_mem, &mapa_rot); } token = strtok(NULL, delim); } } /* Escrever arquivo de saida */ hexadecimal(&mapa_mem,arq_saida); LiberaRotulos(&mapa_rot); LiberaMapaPalavras(&mapa_mem); LiberaNomes(&lista_nom); fclose(arq_entrada);/*fecha o arquivo de entrada*/ fclose(arq_saida);/*fecha o arquivo de saida*/ return 0; }