求帝!
编程吧
全部回复
仅看楼主
level 1
2010年04月07日 17点04分 1
level 1
#include<stdio.h>
#include<stdlib.h>
#define SIZE 4
struct dailfee
{       char type;
        int time11;
        int time12;
        int time13;
        int time21;
        int time22;
        int time23;
        char num[11];
        float cost;
}dail1[SIZE],dail2[SIZE];
main()
{  
   int i;
   float totalcost=0;
   FILE *fp;
   if((fp=fopen("dail_list","wb+"))==NULL)
     {printf("cannot open file\n");
      getchar();
     exit(1);
     }
   printf("please input data:\n");
   for(i=0;i<SIZE;i++)
    { dail1[i].cost=0;
     scanf("%c %d %d %d %d %d %d %s",&dail1[i].type,&dail1[i].time11,&dail1[i].time12,&dail1[i].time13,&dail1[i].time21,&dail1[i].time22,&dail1[i].time23,&dail1[i].num);
     if(dail1[i].time23-dail1[i].time13==0&&dail1[i].time21-dail1[i].time11>=0)
     dail1[i].cost=(dail1[i].time22-dail1[i].time12)*0.08+(dail1[i].time21-dail1[i].time11)*0.08*60;
      else if(dail1[i].time23-dail1[i].time13>0&&dail1[i].time21-dail1[i].time11>=0)
      dail1[i].cost=(dail1[i].time22-dail1[i].time12)*0.08+(dail1[i].time21-dail1[i].time11)*0.08*60+0.08;
       else if(dail1[i].time23-dail1[i].time13<0&&dail1[i].time21-dail1[i].time11>=0);
       dail1[i].cost=(dail1[i].time22-dail1[i].time12)*0.08+(dail1[i].time21-dail1[i].time11)*0.08*60-0.08;
         else if(dail1[i].time23-dail1[i].time13==0&&dail1[i].time21-dail1[i].time11<=0)
         dail1[i].cost=(dail1[i].time22-dail1[i].time12)*0.08+(dail1[i].time21+24-dail1[i].time11)*0.08*60;
          else if(dail1[i].time23-dail1[i].time13>0&&dail1[i].time21-dail1[i].time11<=0)
          dail1[i].cost=(dail1[i].time22-dail1[i].time12)*0.08+(dail1[i].time21+24-dail1[i].time11)*0.08*60+0.08;
            else(dail1[i].time23-dail1[i].time13<0&&dail1[i].time21-dail1[i].time11<=0)
            dail1[i].cost=(dail1[i].time22-dail1[i].time12)*0.08+(dail1[i].time21+24-dail1[i].time11)*0.08*60-0.08;
     totalcost=totalcost+dail1[i].cost;
    }
     fwrite(&dail1,sizeof(struct dailfee),4,fp);
     rewind(fp);
     fread(&dail2,sizeof(struct dailfee),4,fp);
     printf("type   timein   timeout     number     cost");  
     printf(" %c %d:%d:%d %d:%d:%d %s %f\n",dail2[i].type,dail2[i].time11,dail2[i].time12,dail2[i].time13,dail2[i].time21,dail2[i].time22,dail2[i].time23,dail2[i].num,dail2[i].cost);
     printf("总费用为%f",totalcost);
     getchar();
     fclose(fp);
}

2010年04月07日 17点04分 2
1