C语言生成随机数的函数,为什么循环后随机数都一样?
生成随机数的函数,为什么循环后随机数都一样?main(){chara[100];inti;for(i=0;i<100;i++){srand((unsigned)time(...
生成随机数的函数,为什么循环后随机数都一样?
main()
{ char a[100];
int i ;
for(i=0;i<100;i++)
{
srand((unsigned)time(0));
a[i]=rand()%26+97;
}
for(i=99;i>79;i--)
{
printf("%c%c%c%c%c\n",a[i],a[i-20],a[i-40],a[i-60],a[i-80]);
}
getch();
}
为什么输出的字符都是一样的随机数,而不是每个都是不同的随机产生的数?
怎么改? 展开
main()
{ char a[100];
int i ;
for(i=0;i<100;i++)
{
srand((unsigned)time(0));
a[i]=rand()%26+97;
}
for(i=99;i>79;i--)
{
printf("%c%c%c%c%c\n",a[i],a[i-20],a[i-40],a[i-60],a[i-80]);
}
getch();
}
为什么输出的字符都是一样的随机数,而不是每个都是不同的随机产生的数?
怎么改? 展开
8个回答
展开全部
srand((unsigned)time(0));
只需一次,放在最前面即可.
只需一次,放在最前面即可.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
种子的事
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询