Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Psycho

matrizes esparsas em C

Recommended Posts

Ae galera, dá uma ajuda aí!

Tenho um trabalho da faculdade em q devo implementar matrizes esparsas em C por listas encadeadas e depois criar uma função que imprima a matriz, outra que Leia a matriz de um arquivo, outra que apague os elementos da matriz, outra que Some duas matrizes e outra que multiplique.

Já criei a estrutura, a função q imprime e uma função q insere um elemento (célula) na matriz. Criei também uma função que lê a matriz do arquivo e outra que apaga.

Porém estou tendo 2 problemas

um é na função que lê a matriz do arquivo.. quando coloco ela na main direto:

FILE *arq;

Apontador Aux = Matriz.Primeiro;

char NomedoArquivo [40];

printf("Digite o nome do arquivo:\n");

scanf("%s",NomedoArquivo);

arq = fopen(NomedoArquivo,"r");

fscanf(arq,"%d, %d",&Matriz.tamlinha,&Matriz.tamcoluna);

InicializaMatriz(&Matriz);

while (!feof(arq))

{

fscanf(arq,"%ld, %ld, %lf",&Aux->Linha,&Aux->Coluna,&Aux->Valor);

Insere(Aux->Linha, Aux->Coluna, Aux->Valor, &Matriz);

}

fclose(arq);

ela funciona perfeitamente... mas quando coloco ela como uma função separada:

void LeMatriz (TipoMatriz *M)

{

FILE *arq;

Apontador Aux = M->Primeiro;

char NomedoArquivo [40];

printf("Digite o nome do arquivo:\n");

scanf("%s",NomedoArquivo);

arq = fopen(NomedoArquivo,"r");

fscanf(arq,"%d, %d",&M->tamlinha,&M->tamcoluna);

InicializaMatriz(M);

while (!feof(arq))

{

fscanf(arq,"%ld, %ld, %lf",&Aux->Linha,&Aux->Coluna,&Aux->Valor);

Insere(Aux->Linha, Aux->Coluna, Aux->Valor, M);

}

fclose(arq);

}

ela fica dando segmentation fault!

Não sei porque :/ e já está me dando dor de cabeça isso rsrs

o outro problema é na função Apaga.. ela apaga direito certo algumas matrizes de arquivos.. mas tem arquivos que lê, cria a matriz, apaga ela, mas na hora de imprimir tudo zero, dá erro tb :(

alguém ajude por favor heh

valeu galera!

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • Autor do tópico
  • será q o problema de funcionar na main e não como função separada está nas funções

    InicializaMatriz(M);

    Insere(Aux->Linha, Aux->Coluna, Aux->Valor, M);

    ?

    porque na main eu passo a matriz como &Matriz e aí fora não

    mas já tentei de tudo.. passar com & , sem &, com * e sem tb na função e nda dá certo! rsrs

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • consegui consertar o problema de apagar a matriz

    mas esse do arquivo aí tá impossível hehe

    n sei mesmo o q é :(

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • aee consegui consertar! hehe

    valeu pela ajuda! huauha

    ;*

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Ola amigo

    tenho trabalho parecido com seu

    gostaria de saber se você ainda tem o fonte?

    poderia me ajudar?

    valeu

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Crie uma conta ou entre para comentar

    Você precisar ser um membro para fazer um comentário






    Sobre o Clube do Hardware

    No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

    Direitos autorais

    Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

    ×