4.(20分) 计算时间差: 用结构体定义时钟类型,编程从键盘任意输入两个时间(例如4时55分和1时25分),用函数计算并输出这两个时间之间的间隔。要求不输出时间差的负号。
函数原型:CLOCK CalculateTime(CLOCK t1, CLOCK t2)
函数功能:计算两个时间t1和t2之间的间隔,函数返回值为结构体类型。
结构体类型定义:
typedef struct clock
{
int hour;
int minute;
} CLOCK;
程序运行结果示例1:
Input time one:(hour, minute):4,55↙
Input time two: (hour, minute):1,25↙
3 hour,30 minute
程序运行结果示例1:
Input time one:(hour, minute):2,27↙
Input time two: (hour, minute):8,36↙
6 hour, 9 minute
输入提示信息1:“Input time one(hour, minute):”
输入提示信息2:“Input time two(hour, minute):”
输入格式:"%d,%d"
输出格式:"%d hour, %d minute\n"
#include<stdio.h>
typedef struct clock
{
int hour;
int minute;
} CLOCK;
int main()
{
CLOCK a,b;
int h,m;
printf("Input time one(hour, minute):");
scanf("%d,%d",&a.hour,&a.minute);
printf("Input time two(hour, minute):");
scanf("%d,%d",&b.hour,&b.minute);
if(a.hour>b.hour)
{
if(a.minute>b.minute){
h=a.hour-b.hour;
m=a.minute-b.minute;
}
else {
h=0;
m=a.minute+60-b.minute;
}
}
else
{
if(b.minute>a.minute){
h=b.hour-a.hour;
m=b.minute-a.minute;
}
else {
h=0;
m=b.minute+60-a.minute;
}
}
printf("%d hour, %d minute\n",h,m);
return 0;
}