1 _strtime

2 difftime

3 srand

4 time

1 _strtime

函数简介

函数名: _strtime

头文件: time.h

函数原型: char * _strtime(char *)

功能: 获取当前系统时间(不包括日期),函数以字符指针形式为返回.

2 difftime

功能:返回两个time_t型变量之间的时间间隔,即 计算两个时刻之间的时间差。

用法: double difftime(time_t time2, time_t time1);

头文件:time.h

 #define _CRT_SECURE_NO_WARNINGS

 #include <stdio.h>
#include <stdlib.h>
#include <time.h> main()
{
time_t start, end;
double res = ; time(&start);//获取时间,传递给start for (int i = ;i < ;i++)
{
res += i;
} printf("%f\n", res); time(&end);//获取结束时间 printf("消耗时间%f\n", difftime(end, start)); system("pause");
}

3 srand

srand函数是随机数发生器的初始化函数。原型:void srand(unsigned int seed);

srand和rand()配合使用产生伪随机数序列。rand函数在产生随机数前,需要系统提供的生成伪随机数序列的种子,rand根据这个种子的值产生一系列随机数。如果系统提供的种子没有变化,每次调用rand函数生成的伪随机数序列都是一样的。srand(unsigned seed)通过参数seed改变系统提供的种子值,从而可以使得每次调用rand函数生成的伪随机数序列不同,从而实现真正意义上的“随机”。通常可以利用系统时间来改变系统的种子值,即srand(time(NULL)),可以为rand函数提供不同的种子值,进而产生不同的随机数序列

指定范围产生随机数

srand((unsigned)time(null));

(a,b) (rand()%(b-a+1))+a-1

[a,b) (rand()%(b-a))+a

(a,b] (rand()%(b-a))+a+1

[a,b] (rand()%(b-a+1))+a

以下程序为猜数,随机生成0-100的数,大于80赢,其他输。

 #include<stdio.h>
#include<stdlib.h>
#include<time.h>
/* 之所以要这个头文件,因为需要使用时间数据类型time_t */ main()
{
time_t ts; /* 时间变量 */ srand((unsigned int)time(&ts)); /* time是函数,获取时间保存结果在ts中 */ int num = rand() % + ; /* 获取随机数 */ printf("num=%d\n", num); num > ? printf("win") : printf("lose");
}

4 time

函数名称: time

函数原型: time_t time(time_t *timer)

函数功能: 得到系统当前的日历时间 函数返回: 系统当前日历时间,如果不能获得当前日历时间,则返回-1

参数说明: timer=NULL时得到机器日历时间,timer为有效指针时,更新timer为系统当前时间,time_t是一个long类型

所属文件: <time.h>

 #define _CRT_SECURE_NO_WARNINGS

 #include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<windows.h> main()
{
time_t start, end; time(&start);//获取当前时间,放在start变量中 //Sleep(3000);//休眠3秒 register double res = 0.0;//结果 register int i; for (i = ;i < ;i++)
{
res += i;
} printf("%f\n", res); time(&end);//获取当前时间,放在end变量中 printf("%d\n", (unsigned int)(end - start));//获取时间差 system("pause");
}

#include <time.h>的更多相关文章

  1. 浅谈JSP中include指令与include动作标识的区别

    JSP中主要包含三大指令,分别是page,include,taglib.本篇主要提及include指令. include指令使用格式:<%@ include file="文件的绝对路径 ...

  2. Entity Framework 6 Recipes 2nd Edition(13-9)译 -> 避免Include

    问题 你想不用Include()方法,立即加载一下相关的集合,并想通过EF的CodeFirst方式实现. 解决方案 假设你有一个如Figure 13-14所示的模型: Figure 13-14. A ...

  3. error RC1015: cannot open include file 'afxres.h' 解决办法

    在为WindowsPhone8程序添加本地化的过程中遇到这个问题: 问题原因就是afxres.h文件缺失,下载它,放到VS安装目录下的VS\include目录下就可以了(选择目录的时候注意对应对版本) ...

  4. Mybatis常用总结:参数,返回,执行sql,include等

    1.参数注入1.1用#{0},#{1}的形式,0代表第一个参数,1代表第二个参数 public List<RecordVo> queryList(String workerId, Inte ...

  5. jsp中的@include与jsp:include区别详解

    1 前言 搞java开发的人也许都知道在jsp中引入项目中其他文件有如下两种方式 <%@include file="xxx.jsp"%> <jsp:include ...

  6. JSP中编译指令include与动作指令include的区别

    include指令是编译阶段的指令,即include所包含的文件的内容是编译的时候插入到JSP文件中,JSP引擎在判断JSP页面未被修改, 否则视为已被修改.由于被包含的文件是在编译时才插入的,因此如 ...

  7. C/C++ 中的include

    当需要使用已有的方法或库时, 可以将它们的头文件#include进来. #include会在preprocess过程中被替换成它包含的代码. 头文件中包含了需要使用的函数/变量的声明. 当然声明与定义 ...

  8. 织梦多语言站点,{dede:include filename=''/}引入问题

    织梦模板include插入非模板目录文件出现"无法在这个位置找到"错误的解决办法 以下是dede V55_UTF8 查dede include标签手册 (3) include 引入 ...

  9. PHP 站点相对包含,路径的问题解决方法(include,require)

    以前看了,很多框架,基本上很少使用相对路径包含.而一般很多做php web站点,喜欢用相对路径. 认为这样,无论目录放到那里. 只要跟另外目录关系一致.那么就不会出现问题.如果一个站点,一般都认为,如 ...

  10. 如何让include标签包裹的布局置于屏幕最下方?

    如何让一个Layout 始终在屏幕的下方 我想让<include layout="@layout/bottom" />一直在屏幕下,怎么做? 1.相对布局中用属性  a ...

随机推荐

  1. 自学nodejs系列

    好久没有搞nodejs了.nodejs也是更新的很快!!当初翻译的文档

  2. 阿里云 centos 修改iptables

    一.检查iptables服务状态 首先检查iptables服务的状态 [root@woxplife ~]# service iptables status iptables: Firewall is ...

  3. Android的数据存储方式(转)

    数据存储在开发中是使用最频繁的,在这里主要介绍Android平台中实现数据存储的5种方式,分别是: 1 使用SharedPreferences存储数据 2 文件存储数据 3 SQLite数据库存储数据 ...

  4. C读txt到二维数组

    #include<stdio.h> #include<stdlib.h> #define maxn 200 void main() { FILE *fp; int s[maxn ...

  5. OC基础16:复制对象

    "OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1.浅复制即是指针赋值,复制对象的修改会影 ...

  6. 泛泰A900 刷4.4专用中文TWRP2.7.1.1版 支持自己主动识别手机版本号(全球首创)

    因本人手上的A900S已砖, 所以临时弄不了ROM了, 先上传之前已经弄好的刷4.4专用的新版TWRP recovery 2.7.1.1  这个版本号是我自己定义的,为差别之前公布的2.7.0.0版( ...

  7. InfluxDB 开源分布式时序、事件和指标数据库

    InfluxDB 是一个开源分布式时序.事件和指标数据库.使用 Go 语言编写,无需外部依赖.其设计目标是实现分布式和水平伸缩扩展. 特点 schemaless(无结构),可以是任意数量的列 Scal ...

  8. c#的数据类型、运算符

    数据类型:整型:int short long byte小数:double float decimal布尔:bool字符:char 定义变量:数据类型 变量名 [= 值];变量名的命名规则:1.组成的字 ...

  9. pixel像素与物理像素

  10. 在一个apk中调用另外一个apk中的activity

    今天忽然想到如果要在一个activity中调用另外一个activity该怎么办呢? 感觉这个应该比较简单,应为activity的启动方式就两种:显式启动.隐式启动: 显式启动的话肯定不行,那就只能使用 ...