这个代码错哪了,为什么代码正确,运行一半停了?

#include <stdio.h>
int main (void)  {

    int hours,minutes,seconds;
    int addition;
    int i = 0;
    printf ("Please enter a time point:\n");
    scanf ("%02d:%02d:%02d",&hours,&minutes,&seconds);
    printf ("Please enter the seconds you want:\n ");
    while ((scanf ("%d",&addition)) != 0)
    {                   
            if (addition >= 60*60*24) {
                addition %= 60*60*24;
               }
            else   
              while ((addition / 60) >= 60) 
                     ++i;
                                           
           while (addition >=60)  { 
            switch (i)
            {
            case  2 :
                  hours += addition /(60*60);
                  minutes +=addition%(60*60)/60;
                  seconds += addition % (60*60)%60;
                  break;
            case  1 :
                  minutes += addition /60;
                  seconds += addition % 60;
                  break;
            case  0 :
                  seconds += addition ;
                  break;
            default:
                  break;
            }
           }
        
       if (seconds >= 60) {
           seconds = seconds % 60;
           minutes = minutes + seconds/60;
       }
       else if (minutes >=60) {
           minutes = minutes % 60;
           hours = hours + minutes / 60;
       }
       else if (hours >= 24)
           {
            hours = hours-24;
           }
        else
           seconds = seconds;
       printf ("The end time point is:%02d:%02d:%02d\n",hours,minutes,seconds);
    }
    printf ("\nDone!\n");
    return 0;
    
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值