用C语言编写 输出10个 随即生成的由3个数 组成 的数组 的问题。

来源:百度知道 编辑:UC知道 时间:2024/06/16 07:46:07
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int xd()
{int i;
time_t t;
srand((int)time(&t));
i=rand()%4;
return(i);
}
int cd()
{int i;
time_t t;
srand((int)time(&t));
i=rand()%5;
return(i);
}
int xs()
{int i;
time_t t;
srand((int)time(&t));
i=rand()%2000;
return(i);
}
main()
{int i,j;
char a[10],b[10],c[10];
for(i=1;i<=10;i++)
{a[i]=xd();
b[i]=cd();
c[i]=xs();}
for(i=1;i<=10;i++)
printf("{%d,%d,%d}\n",a[i],b[i],c[i]);

}

这是我自己写的代码,修改了N多次,还是找不出到底为什么会随即输出10个同样的值。
请高手帮我修改成入题的要求,能解释下我的问题就最好了!

#include<stdio.h>
#include<stdlib.h>
#include<time.h>

void main()
{
int i,j;
int a[10],b[10],c[10];
srand((unsigned int)time(0));
for(i=1;i<=10;i++)
{
a[i]=rand()%4;
b[i]=rand()%5;
c[i]=rand()%2000;
}
for(i=1;i<=10;i++)
printf("{%d,%d,%d}\n",a[i],b[i],c[i]);
}

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int xd()
{int i;
i=rand()%4;
return(i);
}
int cd()
{int i;
//time_t;
//srand((int)time(&t));
i=rand()%5;
return(i);
}
int xs()
{int i;
//time_t t;
//srand((int)time(&t));
i=rand()%2000;
return(i);
}
main()
{int i,j;
char a[10],b[10],c[10];
srand((int)time(NULL));
for(i=1;i<=10;i++)
{a[i]=xd();
b[i]=cd(