您的位置:

c语言分秒计算,c语言计算时间差 毫秒

本文目录一览:

c语言度分秒计算

#include "stdio.h"

void deg(double *r)

{double a,b,c;

a=(int)*r;

b=(int)(*r*100)-100*a;//改成这样就好了,那是系统的问题。//

c=((*r-a)*100-b)*100;

printf("a=%lf,b=%lf\n,c=%lf\n",a,b,c); /*因为数据输出有问题所以这里加了一句*/

}

main()

{double a,*p;

scanf("%lf",a);

p=a;

deg(p);

printf("%lf\n",*p);

}

用C语言编写一个分秒计时器 大侠们 帮帮我!!

这什么东西啊,也太乱了吧!用一个GetTickCount这个API函数;

GetTickCount函数

函数功能:GetTickCount返回(retrieve)从操作系统启动到现在所经过(elapsed)的毫秒数,它的返回值是DWORD。

函数原型: DWORD GetTickCount(void);

C/C++头文件:winbase.h

windows程序设计中可以使用头文件windows.h

程序示例

//代替time函数来初始化随机数生成器

#includestdio.h

#includewindows.h

int main()  

 {

int i,k,r;

for(i=0;i10;i++)

{

srand(GetTickCount());

printf("\n");

for(k=0;k5;k++)

{

r=rand();

printf("%d ",r);

}

}

return 0;

}

注意事项

GetTickcount函数:它返回从操作系统启动到当前所经过的毫秒数,常常用来判断某个方法执行的时间,其函数原型是DWORD GetTickCount(void),返回值以32位的双字类型DWORD存储,因此可以存储的最大值是2-1 ms约为49.71天,因此若系统运行时间超过49.71天时,这个数就会归0,MSDN中也明确的提到了:"Retrieves the number of milliseconds that have elapsed since the system was started, up to 49.7 days."。因此,如果是编写服务器端程序,此处一定要万分注意,避免引起意外的状况。

这个是从百度百科上贴过来的。

用c语言编一个时钟程序实现时分秒计时功能

#includestdio.h

#includetime.h

int main()

{

time_t t1,t2;

struct tm *ptm;

char timestr[128]={'\0'};

time(t1);

while(1)

{

time(t2);

if(difftime(t2,t1)=1)

{

system("cls");

ptm=localtime(t2);

strftime(timestr,128,"%H:%M:%S",ptm);

printf("%s\n",timestr);

t1=t2;

}

}

system("PAUSE");

return 0;

}

c语言编写 输入一个以秒为单位的时间值,将其转化成“时:分:秒”的形式输出,将转换操作定义成函数

#includestdio.h

void trans(int sec){

int hour,min;

hour=sec/3600; //计算时 3600进制

min=(sec%3600)/60; //计算分 60进制

sec=(sec%3600)%60; //计算秒 余下的全为秒数

printf("%d时:%d分:%d秒\n",hour,min,sec);

}

int main(){

int sec;

printf("请输入秒数:\n");

scanf("%d",sec);

trans(sec);

return 0;

}

可以自己试试

C语言如何获取本地时间,然后取时、分、秒的值?

C语言有2个获取时间的函数,分别是time()和localtime(),time()函数返回unix时间戳-即从1970年1月1日0:00开始所经过得秒数,而localtime()函数则是将这个秒数转化为当地的具体时间(年月日时分秒)

这里时间转化要用到一个“struct tm*”的结构体,结构如下:

struct tm {

int tm_sec;       /* 秒 – 取值区间为[0,59] */

int tm_min;       /* 分 - 取值区间为[0,59] */

int tm_hour;      /* 时 - 取值区间为[0,23] */

int tm_mday;     /* 一个月中的日期 - 取值区间为[1,31] */

int tm_mon;     /* 月份(从一月开始,0代表一月) - 取值区间为[0,11] */

int tm_year;     /* 年份,其值等于实际年份减去1900 */

int tm_wday;    /* 星期 – 取值区间为[0,6],其中0代表星期天,1代表星期一 */

int tm_yday;    /* 从每年1月1日开始的天数– 取值区间[0,365],其中0代表1月1日 */

int tm_isdst;    /* 夏令时标识符,夏令时tm_isdst为正;不实行夏令时tm_isdst为0 */ 

};

示例代码:

#includestdio.h

#includetime.h

int getTime()

{

time_t t;                   //保存unix时间戳的变量 ,长整型

struct tm* lt;           //保存当地具体时间的变量

int p;                     

time(t);                // 等价于 t =time(NULL);获取时间戳

lt = localtime(t);  //转化为当地时间

p = lt-tm_sec;     //将秒数赋值给p

return p;

}

应该就是这样啦~