#include #include FILE *ArqIn, *ArqOut; typedef struct { char nome[30]; float a1,a2,a3; float media; } tipo_medidas; tipo_medidas Tabela[100]; float Maior; main() { int i; ArqIn=fopen("coleta.txt","rt"); if (ArqIn == NULL) { printf("\n## Erro na abertura do arquivo de entrada ##\n"); system("Pause"); exit(0); } ArqOut=fopen("resultado.txt","wt"); if (ArqOut == NULL) { printf("\n## Erro na abertura do arquivo de saida ##\n"); system("Pause"); exit(0); } Maior=-1.0; i=0; while (!feof(ArqIn)) { fscanf(ArqIn,"%s %f %f %f", Tabela[i].nome, &(Tabela[i].a1), &(Tabela[i].a2), &(Tabela[i].a3)); Tabela[i].media=(Tabela[i].a1 + Tabela[i].a2 + Tabela[i].a3)/3.0; fprintf(ArqOut,"%s %f\n",Tabela[i].nome,Tabela[i].media); if (Maior < Tabela[i].a1) Maior=Tabela[i].a1; if (Maior < Tabela[i].a2) Maior=Tabela[i].a2; if (Maior < Tabela[i].a3) Maior=Tabela[i].a3; i++; } fclose(ArqIn); fclose(ArqOut); printf("\n"); printf("Quantidade total de arvores com dados coletados: %d\n",i); printf("Altura da maior arvore: %f\n",Maior); printf("\n"); system("Pause"); }