C语言随机函数结果一样 C语言中随机函数

c语言随机函数每次值相同,怎么改?

在随机生成的函数前面加个srand(time(0))。

十载的河源网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。成都全网营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整河源建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联从事“河源网站设计”,“河源网站推广”以来,每个客户项目都认真落实执行。

void f(int*a,int n)

{int k;

srand(time(0));

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

{a[k]=rand()%11;

printf("%d",a[k]);}

printf("\n");

}

当然在引用头文件列表中也要加上#include time.h

c语言,在循环体中,每次调用的随机循环函数值都一样怎么解决?

在进入循环前添加一句srand(time(NULL)); ,作用用当前时间给随机数种子赋值,报关证每次运行是赋值的种子不同

注意要包含time.h和stdlib.h头文件

C语言生成随机数的函数,为什么循环后随机数都一样?

怎么改ls的大哥们都说了:就是把scand放到for循环上面,只调用一次就可以了。

至于为什么放在for循环里会产生相同的随机数,我来给你说下吧:

srand()函数是初始化随机数产生器,它产生随机数种子,说白了就是初始化随机数。

srand((unsigned)time(0));取的是系统时间,也就是距离1970.1.1午夜有多少秒。

而for循环每循环一次时间远远小于1秒,这就导致了srand((unsigned)time(0))产生的种子并没有改变。

那么,相同的随机数种子所产生的随机数肯定是一样的了。

您明白了吧?

C语言产生随机数字,结果输出值都一样

#include stdio.h

#include stdlib.h

#include time.h

//#include crtdefs.h

int main(){  

int i;

int num;

srand((unsigned int)time(NULL));//改成这样就好了:先用时间初始化随机种子

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

//time_t t; 

num=rand()%100;  //生成随机数

printf("%d\n",num);

num50?printf("你赢了\n"):printf("你输了\n"); //0为假,非0为真

}

getchar();

}


名称栏目:C语言随机函数结果一样 C语言中随机函数
链接URL:http://csdahua.cn/article/hhhgpc.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流