c语言时分秒计算时间差
时间: 2023-08-25 09:49:23 浏览: 31
你可以使用C语言来计算时间差,以下是一个示例代码:
```c
#include <stdio.h>
struct Time {
int hours;
int minutes;
int seconds;
};
struct Time getTimeDifference(struct Time start, struct Time end) {
struct Time diff;
if (end.seconds < start.seconds) {
end.minutes--;
end.seconds += 60;
}
diff.seconds = end.seconds - start.seconds;
if (end.minutes < start.minutes) {
end.hours--;
end.minutes += 60;
}
diff.minutes = end.minutes - start.minutes;
diff.hours = end.hours - start.hours;
return diff;
}
int main() {
struct Time startTime, endTime, diffTime;
printf("Enter start time (hh:mm:ss): ");
scanf("%d:%d:%d", &startTime.hours, &startTime.minutes, &startTime.seconds);
printf("Enter end time (hh:mm:ss): ");
scanf("%d:%d:%d", &endTime.hours, &endTime.minutes, &endTime.seconds);
diffTime = getTimeDifference(startTime, endTime);
printf("Time difference: %02d:%02d:%02d\n", diffTime.hours, diffTime.minutes, diffTime.seconds);
return 0;
}
```
这个程序首先定义了一个`Time`结构体来表示时间。然后,它提供了一个`getTimeDifference`函数,该函数接受两个时间结构体作为参数,并返回它们之间的时间差。在`main`函数中,用户被要求输入起始时间和结束时间,并调用`getTimeDifference`函数来计算时间差,并将结果打印出来。