瞬晞朝露 2022-03-24 06:12 采纳率: 55.6%
浏览 28
已结题

这个程序为什么那个随机数每次生成的是一样的?

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void Input(int (p)[3])
{
int i,j;
srand((unsigned)time(NULL));
for (i=0;i<2;i++)
{
for (j=0;j<3;j++)
{
((p+i)+j)=rand()%6+1;
}
}
}
int dis(int (p)[3])
{
if (
(p)<(p+1)
&&
(p+1)<(p+2)
&&
(
(p+1))<((p+1)+1)
&&((p+1)+1)<((p+1)+2)
&&(p)<((p+1))
&&(p+1)<((p+1)+1)
&&(p+2)<((p+1)+2)) return 1;
else return 0;
}
int main (void)
{
int a[2][3];
int i,j=0,k;
int m,n;
printf("The possible table satisfied above conditions are:\n");
for (k=0;k<10000;k++)
{
Input(a);
i=dis(a);
if (i==1)
{
j=j+1;
printf("No.:%d\n",j);
for (m=0;m<2;m++)
{
for (n=0;n<3;n++)
{
printf("%3d",((a+m)+n));
}
printf("\n");
}
}
else j=j;
}
return 0;
}

展开全部

  • 写回答

2条回答 默认 最新

  • 於黾 2022-03-24 06:25
    关注

    time(NULL)是个小时数,只要小时数没变它都是同一个数啊
    你应该获取一个精确到毫秒的时间

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 4月15日
  • 已采纳回答 4月8日
  • 创建了问题 3月24日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部