C语言教程
C语言控制语句
C语言函数
C语言数组
C语言指针
C语言字符串
C语言数学函数
C语言结构
C语言文件处理
C预处理器

C 计算两个时间段差值的程序

计算两个时间段差值的C程序

在本例中,您将学习使用用户定义的函数计算两个时间段之间的差异。
要理解此示例,您应该了解以下C 编程 主题:
C 用户定义函数 C 结构 C 结构和函数 C 结构和指针

计算两个时间段之间的差异

#include <stdio.h>
struct TIME {
   int seconds;
   int minutes;
   int hours;
};
void differenceBetweenTimePeriod(struct TIME t1,
                                 struct TIME t2,
                                 struct TIME *diff);
int main() {
   struct TIME startTime, stopTime, diff;
   printf("Enter the start time. \n");
   printf("Enter hours, minutes and seconds: ");
   scanf("%d %d %d", &startTime.hours,
         &startTime.minutes,
         &startTime.seconds);
   printf("Enter the stop time. \n");
   printf("Enter hours, minutes and seconds: ");
   scanf("%d %d %d", &stopTime.hours,
         &stopTime.minutes,
         &stopTime.seconds);
   // Difference between start and stop time
   differenceBetweenTimePeriod(startTime, stopTime, &diff);
   printf("\nTime Difference: %d:%d:%d-", startTime.hours,
          startTime.minutes,
          startTime.seconds);
   printf("%d:%d:%d ", stopTime.hours,
          stopTime.minutes,
          stopTime.seconds);
   printf("= %d:%d:%d\n", diff.hours,
          diff.minutes,
          diff.seconds);
   return 0;
}
// Computes difference between time periods
void differenceBetweenTimePeriod(struct TIME start,
                                 struct TIME stop,
                                 struct TIME *diff) {
   while (stop.seconds > start.seconds) {
     --start.minutes;
      start.seconds += 60;
   }
   diff->seconds = start.seconds-stop.seconds;
   while (stop.minutes > start.minutes) {
     --start.hours;
      start.minutes += 60;
   }
   diff->minutes = start.minutes-stop.minutes;
   diff->hours = start.hours-stop.hours;
}
输出
Enter the start time.
Enter hours, minutes and seconds: 13
34
55
Enter the stop time.
Enter hours, minutes and seconds: 8
12
15
Time Difference: 13:34:55-8:12:15 = 5:22:40
在这个程序中,要求用户输入两个时间段,这两个时间段分别存储在结构变量 startTimestopTime中。
然后,函数 differenceBetweenTimePeriod() 计算时间段之间的差异。结果从 main() 函数显示而不返回(使用引用调用技术)。
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4