c语言中rand()赋值给num_r过后,如何使之自动变化?而不是保持num_r所赋初值不变

如题所述

第1个回答  2013-08-03
你这个是不是那个求随机数的? 是的话看看这个,不是就不用看了,找的资料
srand(设置随机数种子)
相关函数
rand
表头文件
#include<stdlib.h>
定义函数
void srand (unsigned int seed);
函数说明
srand()用来设置rand()产生随机数时的随机数种子。参数seed必须是个整数,通常可以利用geypid()或time(0)的返回值来当做seed。如果每次seed都设相同值,rand()所产生的随机数值每次就会一样。
返回值
范例
/* 产生介于1 到10 间的随机数值,此范例与执行结果可与rand()参照*/
#include<time.h>
#include<stdlib.h>
main()
{
int i,j;
srand((int)time(0));
for(i=0;i<10;i++)
{
j=1+(int)(10.0*rand()/(RAND_MAX+1.0));
printf(" %d ",j);
}
}
执行
5 8 8 8 10 2 10 8 9 9
2 9 7 4 10 3 2 10 8 7
第2个回答  2013-08-03
应该对你有帮助的!使用volatile关键字定义一下你的定义num_r变量就好了,即是编译器不会对你指定的变量进行优化。
例如:volatileintnum_r;
num_r=rand();本回答被网友采纳
相似回答