源.cpp+×
C++1 (全局范围 funGinta,intb)
日#include<iostream>//基本输入输出函数
2 #include<cmath>//数学函数
using namespace std: 3 //template<typename>//函数模板
4 intfun(inta,intb)
5
6 intx,y:
x=a%100 7 //后两位
8 y=a/100: //前两位
9 E if(b<O)
10
11 y+=((x+b)-60)/60;
x=x+b%60
B
14 else
56
y+=(x+b)/60
17 x=(x+b)%60
18
9 returny*100+x;
20
21 intmainO
22
23 inta,b
24 cin>>a>>b;
25 printf(”%03d”,fun(a,b)):
26
return0:
27
#include <stdio.h>
int main(){
int f = 0;
int e = 0;
scanf("%d %d",&f,&e);
int a = f/100;
int b = f%100;
int g = ((a*60 + b)+e);
int n = g/60;
int m = g%60;
printf("%d",n);
printf("%02d",m);
return 0;
}
b小于0时逻辑有错误,修改如下:
如有帮助,请帮忙采纳一下,谢谢。
#include <iostream>
#include <math.h>
using namespace std;
int fun(int a,int b)
{
int x,y;
x = a%100;
y = a/100;
if (b < 0)
{
if(x+b < 0)
y += (x+b)/60 -1;
while(y<0) y += 24;
x = ((x+b)%60 + 60)%60;
}else
{
y += (x+b)/60;
x = (x+b)%60;
}
return y*100+x;
}
int main()
{
int a,b;
cin >> a>>b;
printf("%03d",fun(a,b));
return 0;
}