Ir para conteúdo
Fórum Script Brasil

ojoaootavio

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Tudo que ojoaootavio postou

  1. ojoaootavio

    Caça Palavras

    http://olimpiada.ic.unicamp.br/pratique/pr...2/caca_palavras Estou resolvendo esse problema e preciso terminar até a 3 feira já fiz essa parte #include <stdio.h> #include <stdlib.h> #include <string.h> #include <math.h> FILE *abreArquivo(char *arq, char *tipo){ //função para abrir arquivo. Retorna NULL caso não consiga abrir o arquivo FILE *pFile = fopen(arq, tipo); if (pFile==NULL){ printf("Arquivo %s não encontrado!", arq); } return pFile; } void fechaArquivo(FILE *pFile){ fclose(pFile); } char *mat, **pal, palavra[30]; char n; int i, j, lin, col, nPal; void parsingArquivoEntrada(char *arq){ //Abre arquivo para leitura FILE *pFile = abreArquivo(arq, "r"); if (pFile){ fscanf(pFile, "%d*c", &lin); fscanf(pFile, "%d*c", &col); fscanf(pFile, "%d*c", &nPal); mat = (char*) malloc(lin*col*sizeof(char)); pal = (char**) malloc(nPal*sizeof(char)); //para acessar a matriz definida com um vetor tem que usar o calculo //linha_acessar * colunas_matriz + coluna_acessar for (i=0; i < lin; i++){ for (j=0; j < col; j++){ fscanf(pFile, "%c", &mat[i*col+j]); } fscanf(pFile, "%c", &n); } for (i=0; i < nPal; i++){ fgets(palavra, 30, pFile); fscanf(pFile, "%s", palavra); pal = malloc (strlen(palavra) * sizeof(char)); strcpy(pal, palavra) ; printf("%s\n", pal); } for(i=0;i<lin;i++){ printf("\n\n"); for(j=0;j<col;j++){ printf(" %c ", mat[i*col+j]); } } printf("\n\n\n"); /* while (!feof(pFile)){ fscanf(pFile, "%c", &n); printf ("%c", n); } */ //Fecha arquivo fechaArquivo(pFile); } } void gravaArquivoSaida(char *arq, char *string){ //Abre arquivo para leitura FILE *pFile = abreArquivo(arq, "w"); if (pFile){ fprintf(pFile, "%s", string); //Fecha arquivo fechaArquivo(pFile); } } int main(int argc, char* argv[]){ char *str; if (argc < 3){ printf("Ow mane, esqueceu de um parametro de entrada!\n"); return 0; } else { parsingArquivoEntrada(argv[1]); str = "Teste 1\n0 1 2 3 4 5\n6 7 8 9 10\nfim"; gravaArquivoSaida(argv[2], str); str = "Teste 2\n0 1 2 3 4 5\n6 7 8 9 10\nfim"; gravaArquivoSaida(argv[2], str); } return 0; } A entrada é 8 11 8 abcdefghigg hebkwaldork ftyawaldorm ftsimrlqsrc byoarbedeyv klcbqwikomk strebgadhrb yuiqlxcnbjf waldorf bambi betty paralelepipedo dagbert frod rebelde amarrar como prossigo com o código, alguém pode me ajudar a terminar?
×
×
  • Criar Novo...