#include<stdio.h> typedef struct Time{ int hour,minute,second; }Time; /* 描述时间的结构体 */ /* 输入时间函数 */ void ReadTime(Time *time) { scanf("%d:%d:%d",&time->hour,&time->minute,&time->second); } /* 输出时间函数 */ void PrintTime(Time *time) { printf("%d:",time->hour); if(time->minute<10) printf("0"); printf("%d:",time->minute); if(time->second<10) printf("0"); printf("%d",time->second); } //计算两个时间只差 void TimeSub(Time *time1,Time *time2,Time *time) { long t1,t2,t; t1=time1->hour * 3600 + time1->minute*60 + time1->second; t2=time2->hour * 3600 + time2->minute *60 + time2->second; t=t1-t2;//将时间转化为秒 if(t<0) t=t*(-1); //将秒转化为时间 time->hour= t/3600; time->minute= (t-time->hour*3600)/60; time->second= t%60; } int main() { Time time1,time2,time; ReadTime(&time1);//读时间 ReadTime(&time2);//读第一个时间 TimeSub(&time1,&time2,&time);//计算减法 PrintTime(&time);//返回一个时间 return 0; } |
Double click to view unformatted code.