C语言计算时间

已知手机开始通话的时间,比如: 24:51,表示某时的24分51秒,结束通话的时间,比如:25:02,表示某时25分02秒。假设手机的通话时间不会超过1小时。根据这两个数据就可以计算出,通话时间为:11秒。
程序的任务是:从键盘输入“开始通话时间”,“结束通话时间”,计算并输出通话的秒数(不考虑用户输入错误的情况)。用户输入的格式是:分秒间用冒号分开,开始、结束间用空格分开。例如:
用户输入:24:55 26:12
程序输出:77

在C语言中计算时间,可以使用标准库中的计时函数——clock()。

函数原型:

clock_t clock( void );

其中clock_t是用来保存时间的数据类型,在time.h文件中,可以找到对它的定义:

#ifndef _CLOCK_T_DEFINED
typedef long clock_t;
#define _CLOCK_T_DEFINED
#endif


很明显,clock_t是一个长整形数。在time.h文件中,还定义了一个常量CLOCKS_PER_SEC,它用来表示一秒钟会有多少个时钟计时单元,其定义如下:

#define CLOCKS_PER_SEC ((clock_t)1000)

可以看到每过千分之一秒(1毫秒),调用clock()函数返回的值就加1。下面举个例子,可以使用公式clock()/CLOCKS_PER_SEC来计算一个进程自身的运行时间:

void elapsed_time()
{
printf("Elapsed time:%u secs.\n",clock()/CLOCKS_PER_SEC);
}

当然,也可以用clock函数来计算的机器运行一个循环或者处理其它事件到底花了多少时间:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main( void )
{
long    i = 10000000L;
clock_t start, finish;
double  duration;
printf( "Time to do %ld empty loops is ", i );
start = clock();
while( i-- )      ;
finish = clock();
duration = (double)(finish - start) / CLOCKS_PER_SEC;
printf( "%f seconds\n", duration );
system("pause");
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-02-22
#include <stdio.h>
int main()
{
int a,b,c,d;
scanf("%d:%d %d:%d",&a,&b,&c,&d);
printf("%d\n",c*60+d-(a*60+b));
}
满意请采纳!
第2个回答  2012-02-22
#include <stdio.h>
int main(void)
{
int min_start,min_end,sec_start,sec_end,last;
scanf("%d%*c%d%d%*c%d",&min_start,&sec_start,&min_end,&sec_end);
last=60*(min_end-min_start)+(sec_end-sec_start);
printf("%d\n",last);
return 0;
}
第3个回答  2012-02-22
#include <stdio.h>
int main()
{
int a,b,c,d;
scanf("%d:%d",&a,&b);
scanf("%d:%d",&c,&d);
printf("%d\n",c*60+d-(a*60+b));
return 0;
}本回答被提问者采纳
第4个回答  2012-02-22
//最短最精辟 不解释
24:55 26:12
77
Press any key to continue

#include <stdio.h>
main()
{
int begM,endM,begS,endS;
scanf("%d:%d %d:%d",&begM,&begS,&endM,&endS);
printf("%d\n",60*(endM-begM)+(endS-begS));
}

C语言操作时间函数time.ctime,实现定时执行某个任务小例子
时间概述:由上图可知,以下是一些常用的时间函数及其示例。1. time函数:以下是一个示例。输出:有兴趣的同学可以计算一下,从1970年1月1日0时0分0秒到现在经历了多少秒。附:time_t 一路追踪发现就是从long类型经过不断的typedef, #define定义过来的。2. ctime函数:以下是一个示例。输出:3. ...

如何在C语言中进行日期和时间处理
strftime(buffer, 80, "%Y-%m-%d %H:%M:%S", tm_info);printf("格式化后的时间: %s", buffer);return 0;} 计算两个日期之间的天数,difftime函数是关键,示例如下:c include int main() { time_t t1, t2;double seconds;int days;\/\/ ...其他代码...printf("两个日期之间的天数差: ...

用C语言编写一个时间换算
int main(){ \/\/世界协调时与北京时间换算 int a;scanf("%d",&a); \/*输入北京时间*\/ if (a >= 800){ printf("%d\\n",a-800); \/*如果输入的北京时间大于800,直接减去800,就是世界协调时*\/ } else{ int b=a\/100; \/*换算百位数字*\/ int c=a%100; \/*换算十位和个位...

c语言编程,怎么计算时间
include void main(){ unsigned char time1[] = { 10, 8, 31, 9, 26 };unsigned char time2[] = { 10, 8, 31, 9, 50 };struct tm t1 = {0};struct tm t2 = {0};time_t _t1;time_t _t2;double diff;t1.tm_year = time1[0] + 100;t1.tm_mon = time1[1];t1.tm...

c语言倒计时函数怎么写
1. 在C语言中,要实现倒计时功能,可以使用ftime()函数来获取当前时间并进行计算。以下是一个使用ftime()进行计时的参考代码结构:```c struct timeb { time_t time; \/\/ 秒 unsigned short millitm; \/\/ 毫秒 short timezone; \/\/ 时区 short dstflag; \/\/ 夏令时标志 };```2. 如...

C语言运行一条语句所用时间如何计算?
把time.h include进来 然后在代码的前面和后面都加一条代码,获得时间 long start=clock();long end=clock();两个减一下就是秒数

C语言中time.h头文件中对时间的操作具体是怎样的?
time.h头文件提供对时间操作的一些函数,clock()是程序开始到调用的毫秒数。time_tt_begin,t_end;t_begin=clock();\/\/记录开始时间 dosomething();\/\/调用函数 t_end=clock();\/\/记录结束时间 printf("Timeused=%.21f\\n",(double)(t_end-t_begin)\/CLOCKS_PER_SEC);\/\/显示函数调用时间 ...

C语言计算两个时间差
在主函数`main()`中,先输入两个日期,然后调用`CompareDate()`函数确保日期顺序正确。接着,调用`NumberOfDaysBetween()`函数计算日期间隔,并输出结果。最后,程序结束。整个计算流程基于结构体`struct date`定义两个日期对象,并使用预定义数组`daysPerMonth`存储每月的天数。通过以上步骤,可以准确计算两...

C语言如何用表达式表达时间time是上午十点或下午三点?求大神指教_百度...
(time==10||time==15)

怎样用c语言设计计算程序执行的时间?
C语言中的头文件time.h中定义了库函数clock(),它返回的是从程序运行开始算起的时间,一时钟周期为单位,time.h还定义了符号:CLOCKS_PER_SEC,即一秒钟的时钟周期。这样就简单了,在头文件中加入#include,在程序main()主函数的开头定义long now=0;并给把clock()赋值给now,即now=clock()...

相似回答
大家正在搜