2501 Average Speed

  1. /*
  2.   第一行的速度可能为0,故初始速度要为0
  3.   */
  4. #include<iostream>
  5. using namespace std;
  6. int main()
  7. {
  8.     freopen("in.txt","r",stdin);
  9.     int h,m,s,k(0);
  10.     int pres(0),nows,time;
  11.     double sum=0.0;
  12.     char c;
  13.     while(scanf("%d%c%d%c%d",&h,&c,&m,&c,&s)!=EOF)
  14.     {
  15.         c=getchar();
  16.         if(h==24)
  17.             h=0;
  18.         if(c!='/n')
  19.         {
  20.         
  21.             if(pres!=0)
  22.             {
  23.             nows=s+m*60+h*60*60;
  24.             time=nows-pres;
  25.             sum+=time*k/3600.0;
  26.             }
  27.                 cin>>k;
  28.         }
  29.         else
  30.         {
  31.         
  32.             nows=s+m*60+h*60*60;
  33.             time=nows-pres;
  34.             if(k!=0)
  35.             sum+=time*k/3600.0;
  36.             if(h<10)
  37.                 cout<<0<<h<<":";
  38.             else
  39.                 cout<<h<<":";
  40.             if(m<10)
  41.                 cout<<0<<m<<":";
  42.             else
  43.                 cout<<m<<":";
  44.             if(s<10)
  45.                 cout<<0<<s<<" ";
  46.             else
  47.                 cout<<s<<" ";
  48.             printf("%0.2lf km/n",sum);
  49.         }
  50.     
  51.         pres=s+m*60+h*60*60;
  52.     
  53.     }
  54.     return 0;
  55. }
关键是输出格式的处理,还又要注意 24小时变为0小时
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值