然后是几点

注意,第二个数字表示的分钟数可能超过60,也可能是负数

#include <stdio.h>
int main()
{ int a,b,c=0,d=0,e=0;
scanf("%d %d", &a, &b);
if(b>=60)
{c=b/60;d=b%60;e=a%100+d;
if(e>=60) a=(a/100+(c+e/60))*100+e%60;
else a=(a/100+c)*100+d;}
else if(b>=0) a=(a/100+(a%100+b)/60)*100+(a%100+b)%60;
else if(b<=-60)
{c=b/60;d=b%60;e=a%100+d;
if(e<0)a=(a/100+(c+e/60)-1)*100+60+e;
else a=(a/100+(c+e/60))*100+e;
}
else if(b>-60) a=(a/100+(a%100+b)/60)*100+(a%100+b)%60;
printf("%d", a);
return 0;
}

  上面有助理解,下面有一快捷方法

 1 #include <stdio.h>
 2 int main()
 3 {
 4     int a,b;
 5     scanf("%d %d",&a,&b);
 6         if(b>=0)
 7         {
 8          printf("%d",(a/100+(b+a%100)/60)*100+((b+a%100)%60));
 9         }
10         else
11         {
12          printf("%d",(a/100*60+a%100+b)/60*100+(a/100*60+a%100+b)%60);
13         }
return 0;
14 }

 

posted @ 2015-01-27 08:51  NYNU_ACM  阅读(228)  评论(0编辑  收藏  举报