用C语言程序计算旅程时间,输入timel和time2(有效范围为000到达时间的情况),如: 请输入time1,time2:712 1411(7:12出发,14:11到)旅程时间为6小时59分钟
时间: 2024-10-12 13:14:03 浏览: 32
在C语言中,我们可以创建一个简单的函数来计算两个时间之间的差值,并转换为小时和分钟。这里是一个基本的示例:
```c
#include <stdio.h>
// 定义结构体表示时间点
typedef struct {
int hour;
int minute;
} Time;
// 函数用来计算时间差
Time calculate_duration(Time time1, Time time2) {
int diff_hours = (time2.hour - time1.hour);
if (diff_hours < 0) { // 如果第一个时间晚于第二个时间
diff_hours += 24; // 将24小时加回
}
int diff_minutes = time2.minute - time1.minute;
if (diff_minutes < 0) {
diff_minutes += 60; // 如果分钟数少于0,则加上一小时
}
// 检查分钟是否超过60并更新小时数
if (diff_minutes >= 60) {
diff_hours += diff_minutes / 60;
diff_minutes %= 60;
}
Time duration = { .hour = diff_hours, .minute = diff_minutes };
return duration;
}
int main() {
printf("请输入time1,time2: ");
scanf("%d %d", &time1.hour, &time1.minute);
scanf("%d %d", &time2.hour, &time2.minute);
Time start = { time1.hour, time1.minute };
Time end = { time2.hour, time2.minute };
Time result = calculate_duration(start, end);
printf("旅程时间为%d小时%02d分钟\n", result.hour, result.minute);
return 0;
}
```
在这个程序里,我们首先定义了一个`Time`结构体,然后通过`calculate_duration`函数计算出两个时间之间的差异。请注意,这个程序假设用户输入的时间都是有效的,如果需要处理无效输入,还需要添加额外的错误检查。
阅读全文