Ir ao conteúdo
  • Cadastre-se

Tah262

Membro Júnior
  • Posts

    3
  • Cadastrado em

  • Última visita

posts postados por Tah262

  1. Estou com um problema com o código abaixo, ele não roda em windows somente em linux, alguém pode me ajudar por gentileza 

    obs: o arquivo externo do código esta em anexo


     

    #include <stdio.h>
    #include <string.h>
    #define TAMC 500
    #define TAML 6000
    #define N 10000
    int k;
    
    void leitura(char nome[][TAMC],double *preco,int *cod,double *soma);
    void ordenacao(char nome[][TAMC],double *preco,int *cod);
    void maiores(char nome[][TAMC],double *preco,int *cod,double *soma);
    void main(){
        int n = 1000,i = 0, cod[10000];
        char str[n], nome[TAML][TAMC];
        double preco[N], soma=0.0;
        leitura(nome,preco,cod,&soma);
        ordenacao(nome,preco,cod);
        maiores(nome,preco,cod,&soma);    
    	}
    	void leitura(char nome[][TAMC],double *preco,int *cod,double *soma){
    		int i=0;
    		int n=100;
    		char str[n];
    		FILE *file = fopen("entrada.txt", "r");
    		while(fgets(str,n,file)!=NULL){
    		    fscanf(file,"%d;%[^';'];%lf",&cod[i],nome[i],&preco[i]);
    		    *(soma) +=preco[i];
    		    i++;
      		}
    	  k = i;
    	  fclose(file);
    	}
    	void ordenacao(char nome[][TAMC],double *preco,int *cod){
    		int i,j,cod_aux;
    		float preco_aux=0;
    		char nome_aux[1][TAMC];
    		for (i=0;i<k;i++) {
        		for (j=0;j<k;j++) {
          			if(preco[i] >= preco[j]){
    			        cod_aux=cod[i];
    			        cod[i]=cod[j];
    			        cod[j]=cod_aux;
    			        strcpy(nome_aux[0], nome[i]);
    			        strcpy(nome[i],nome[j]);
    			        strcpy(nome[j],nome_aux[0]);
    			        preco_aux=preco[i];
    			        preco[i]=preco[j];
    			        preco[j]=preco_aux;
          			}
       			}
      		}
    	}
    
    	void maiores(char nome[][TAMC],double *preco,int *cod, double *soma){
    		FILE *arq = fopen("100-Maiores.csv","wt");
    		int l;
    		for(l=0;l<100;l++){
        		fprintf(arq, "%d;%s;%lf;%.2lf\n",cod[l],nome[l],preco[l], *(soma) );
      		}
      		fclose(arq);
    	}


     

    entrada.txt

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!