如何用C语言生成时间的随机数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用C语言生成时间的随机数相关的知识,希望对你有一定的参考价值。
如题,需要一个程序,可以把时间用随机数生成,时间最好是年月日小时分钟都有。
菜鸟一个,希望解释的详细一些~~
先谢谢各位啦~~
srand() and rand()
srand() 的作用是是一个种子,提供每次获得随机数的基数而已,rand()根据种子而产生随机数
注意
1:srand() 里的值必须是动态变化的,否则得到的随机数就是一个固定数
2:其实可以不用写srand() ,只用rand()就可以了,省事,简单,例子如下
如果我们想得到一个 0-60的随机数那么可以写成
int i;
i=rand()%60;
就可以了。
当然最好有个统一的标注如下:
int i;
srand((unsigned)time( NULL ));
i=rand()%60;
这样就OK了。 参考技术A srand()加任何参数做种子(种子相同,产生的随机数序列相同)
用srand(time(NULL))可产生真正的随机数
再用rand()产生随机数
一个文件中只需要一次srand()
就可以无限次rand() 参考技术B #include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
int year;
int mouth;
int date;
int hour;
int min;
srand(time(0));
year = 2000 + rand()%100;
mouth = rand()%12;
date = rand()%30;
hour = rand()%24;
min = rand()%60;
printf("data:%d.%d.%d time: %d %d",year,mouth,date,hour,min);
return 0;
头文件
#include<stdlib.h>
#include<time.h>
生成随机数前先
srand(time(0));
相当于初始化
rand()即生成随机数本回答被提问者采纳 参考技术C 用srand函数或者random函数 参考技术D C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
C语言如何用数组存储一些中文名字,并且可以随机抽取一个名字输出
如题,最好能用char
示例
//Visual Studio中加上这句才可以使用scanf()
//否则只能使用scanf_s()
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#define NUM 5
//argc: 参数个数 argv[]: 参数数组
int main(int argc, char *argv[])
char ch_arr[NUM][8] = "小东", "小明","小李","小王","小红" ;
srand((unsigned)time(NULL));// 初始化随机数
for (int i = 0; i < 10; i++)
int r = rand() % NUM;
printf("[%d] %s\\n", r, ch_arr[r]);
system("pause");
return 0;
运行测试
注意:必须确保窗口的代码页设置的是中文
更多C语言教程
#include<stdlib.h>
#include<time.h>
int main()
char m,*names[]="猪八戒","张三","李四","王五","马六","孙悟空","东方不败";
int len=sizeof(names)/sizeof(char*);
srand(time(NULL));
do
puts(names[rand()%len]);
printf("是否继续(y/n)?");
m=getchar()|0x20;
fflush(stdin);
while('y'==m);
return 0;
本回答被提问者采纳
以上是关于如何用C语言生成时间的随机数的主要内容,如果未能解决你的问题,请参考以下文章