小明的家距离学校很远,小明想知道从家里出发到学校耗费了多少时间。 输入:输入用空格隔开的四个整数,分别代表从家出发的时、分和到校的时、分。 输出:输出用空格隔开的两个整数,代表总共花了多少小时多少分钟。用c语言答
时间: 2024-10-25 17:03:53 浏览: 30
在C语言中,你可以通过以下几个步骤计算小明上学花费的时间:
1. 分别获取出发时间和到达时间的小时数和分钟数。
2. 计算小时差:到达时间的小时数减去出发时间的小时数。
3. 如果到达时间小于出发时间,则小时差加一天(24小时),并减去出发时间的分钟数。
4. 计算分钟差:到达时间的分钟数加上出发时间的分钟数,如果超过60分钟则需要转换成小时和剩余的分钟。
5. 合并小时差和分钟差,形成最终的答案。
下面是一个简单的C语言函数实现:
```c
#include <stdio.h>
void calculate_travel_time(int departure_hour, int departure_min, int arrival_hour, int arrival_min) {
int travel_hours, travel_minutes;
travel_hours = arrival_hour - departure_hour;
if (arrival_hour < departure_hour) {
travel_hours += 24; // 补上一整天的时间
}
travel_minutes = arrival_min + departure_min;
// 超过60分钟的情况处理
while (travel_minutes >= 60) {
travel_minutes -= 60;
travel_hours++;
}
printf("%d %02d\n", travel_hours, travel_minutes); // 输出格式化,保留两位小数点
}
int main() {
int departure_hour, departure_min, arrival_hour, arrival_min;
scanf("%d %d %d %d", &departure_hour, &departure_min, &arrival_hour, &arrival_min);
calculate_travel_time(departure_hour, departure_min, arrival_hour, arrival_min);
return 0;
}
阅读全文