Ir ao conteúdo
  • Cadastre-se

Angelij

Membros Juniores
  • Total de itens

    3
  • Registro em

  • Última visita

  • Qualificações

    N/D
  1. Digitei o código abaixo exatamente como está em meu livro, acontece que esse código não está compilando e não consigo identificar o erro. Revisei o código todo acompanhando o livro e nada de encontrar problema. Se alguém puder me ajudar fico agradecida! #include <stdio.h> #include <stdlib.h> struct Registro_Carro { char Placa[7]; char Modelo[30]; char Cor[30]; int ano; }; void Grava_Dados(struct Registro_Carro Vetor_Carros[100]) { int i; FILE *Id_Arquivo; if((Id_Arquivo = fopen("carros1.dat", "w")) == NULL) { printf("Problemas para gravar na abertura do arquivo de carros!\n"); exit(-1); } i=0; while(i <100 && strcmp(Vetor_Carros[i].Placa, "fim") != 0) { if(fwrite(&(Vetor_Carros[i]), sizeof(struct Registro_Carro), 1, Id_Arquivo) == 0) { prinftf("Problemas na gravacao do arquivo de carros!\n"); exit(-1); } i = i+1; } if(fclose(Id_Arquivo) != 0) { printf("Problemas no fechamento do arquivo de carros!\n"); exit(-1); } } void Le_Dados(struct Registro_Carro *Vetor_Carros) { int i; FILE *Id_Arquivo; struct Registro_Carro *Carro; Carro = (struct Registro_Carro *) malloc(sizeof(struct Registro_Carro)); if((Id_Arquivo = fopen("carros.dat", "r")) == NULL) { printf("Problemas na abertura do arquivode carros para leitura!\n"); exit(-1); } i - 0; while(i < 100 && ! feof(Id_Arquivo)) { fread(Carro, sizeof(struct Registro_Carro), 1, Id_Arquivo); if(ferror(Id_Arquivo)) { printf("Problemas na leitura do arquivo de carros!\n"); exit(-1); } else { Vetor_Carros[i].ano = Carro->ano; strcpy(Vetor_Carros[i].Placa, Carro->Placa); strcpy(Vetor_Carros[i].Modelo, Carro->Modelo); strcpy(Vetor_Carros[i].Cor, Carro->Cor); } i = i+1; } if(fclose(Id_Arquivo) != 0) { printf("Problemas no fechamento do arquivo de carros!\n"); exit(-1); } } int main() { struct Registro_Carro *Vetor_Carros; Vetor_Carros = (struct Registro_Carro *) malloc(100 * sizeof(struct Registro_Carro)); sprintf(Vetor_Carros[0].Modelo, "mustangue"); sprintf(Vetor_Carros[0].Cor, "Verde"); Vetor_Carros[0].ano = 75; sprintf(Vetor_Carros[1].Placa, "755"); sprintf(Vetor_Carros[1].Modelo, "gol"); sprintf(Vetor_Carros[1].Cor, "azul"); Vetor_Carros[1].ano = 1234; sprintf(Vetor_Carros[2].Placa, "fim"); sprintf(Vetor_Carros[2].Modelo, "teste"); sprintf(Vetor_Carros[2].Cor, "teste"); Vetor_Carros[2].ano = 0; Le_Dados(Vetor_Carros); Grava_Dados(Vetor_Carros); }
  2. adicionado 4 minutos depois Boa noite Arthur Vandellay! Após visualizar seu código entendi perfeitamente quando usar "fprintf". Eu havia visto algumas vídeo aulas, mas não havia ficado claro do quando usar tal função. Muito agradecida, Angélica
  3. Preciso fazer a leitura de uma matriz via teclado, somar os elementos dela e imprimir gerando um arquivo em txt que exibirá tanto a matriz como o resultado. Fiz essa matriz aí embaixo, mas ela apenas gera o arquivo matrix.txt, sendo que não exibe nada. #include <stdio.h> #include <stdlib.h> int main() { FILE *entrada; FILE *saida; int i, j, result=0, matrix[3][3]; entrada = fopen("matrix.txt", "r"); if(!entrada) { printf("Erro na abertura do arquivo"); exit(0); } else if((entrada = fopen("matrix.txt", "rb")) == NULL) { printf("Erro na abertura do arquivo"); exit(1); } for(i=0;i<3;i++) for(j=0;j<3;j++) { printf("Elemento[%d][%d]= ", i, j); scanf("%d", &matrix[i][j]); } printf("\n::: Valores Digitados :::\n"); for(i=0;i<3;i++) { for(j=0;j<3;j++) printf("%d\t", matrix[i][j]); printf("\n"); } for(i=0;i<3;i++) for(j=0;j<3;j++) matrix[i][j]=matrix[i][j]*1; for(i=0;i<3;i++) { for(j=0;j<3;j++) result=result+matrix[i][j]; } printf("\n\nA soma dos valores e: %d\n", result); fclose(entrada); saida = fopen("matrix.txt", "w"); return 0; }

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

×