C语言练习--时间跨度计算

输入:时:分 例如12:13
输出:时:分 例如1:12
代码:

#include 

int main()
{
	int hour1;
	int minute1;
	int hour2;
	int minute2;
	printf("请输入第一个时间的小时与分钟,用空格分割:");
	scanf("%d %d",&hour1,&minute1);
	printf("请输入第二个时间的小时与分钟,用空格分割:");
	scanf("%d %d",&hour2,&minute2);
	//第一个思路:将两个时间划分为全部以分钟为单位
//	int time1 = hour1 * 60 + minute1;
//	int time2 = hour2 * 60 + minute2;
//	//计算时间差
//	int timeGap = time2 - time1;
//	//将时间差换算为小时与分钟形式 
//	int timeGapHour = timeGap / 60;
//	int timeGapMinute = timeGap % 60;

	//第二个思路:不全部换算成分钟,而是考虑借位情况
	int timeGapHour = hour2 - hour1;
	int timeGapMinute = minute2 - minute1;
	if(timeGapMinute < 0)
	{
		//如果小于0,说明需要借位,借位从数学上来看,就是分钟加60,小时-1
		timeGapMinute += 60;
		timeGapHour --; 
	}
	printf("时间差为%d:%d",timeGapHour,timeGapMinute);
}

注意点:

  1. 在C语言里,比较运算符得到的结果,true为1,false为0

你可能感兴趣的:(C语言,c语言,算法,c++)