ciao a tutti non riesco a far girare questo codice non mi vengono i ris finali dei km percorsi del costo totale e della data ultima con tipo R per la citta di TORINOil file sorgente è:codice:#include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX 100 #define NAME 20 int main(int argc,char*argv[]) { FILE*fp; char dest[NAME],data[NAME]; int met,i; char str[MAX]; char tipo; float km,tot_km,tot_costo; fp=fopen("viaggi.txt","r"); if(fp==NULL) { printf("errore\n"); return -1; } if(argc!=2) { printf("errore numero parametri del file %s\n",argv[1]); return -1; } tot_km=0.00; i=0; while(fgets(str,MAX,fp)!=NULL) { sscanf(str,"%s %s %d %c",dest,data,&met,&tipo); if(strcmp(dest,argv[1])==0 && tipo=='R') i++; { km=(float)met/100.00; tot_km+=km; tot_costo=(5.00*i)+(tot_km*0.10); } } printf("chilometri totali verso %s: %.2f\n",argv[1],tot_km); printf("costo totale verso %s: Euro %.2f\n",argv[1],tot_costo); printf("volte R = %d",i); fclose(fp); return 0; }
dest data met tipo
torino 22/01/2011 120000 A
milano 01/03/2011 80000 R
genova 03/06/2011 100000 A
bologna 01/02/2011 100000 A
torino 15/01/2011 120000 R
milano 20/01/2011 80000 R
torino 01/01/2011 80000 A
torino 22/01/2011 80000 R
e il file di output deve essere
Chilometri totali verso torino: 200.00
Data ultimo viaggio: 22/01/2011 // questa non l ho ancora fatto(nn so come si fa help me)
Costo totale viaggi verso torino: Euro 30.00
Il costo totale dei viaggi, sapendo che la tariffazione è di 5 € per ogni viaggio più 10 cent. al chilometro.
GRAZIE!!

Rispondi quotando