利用一个随机数发生器函数,int rand()每次生成一个随机整数,转换成1-10中的整数,连续多次后,获得1-10的不重复随机整数列,
如下:
代码:
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
int main()
{
int a[10],i=0,j,t;
srand((unsigned int)time(NULL));
while(i<10)
{
while(1)
{
t= rand()%10+1;
for(j=0;j<i;j++)
{
if(a[j]== t)
break;
}
if(j==i)
{
a[i++] = t;
break;
}
}
}
for(i=0;i<10;i++)
printf("%d ",a[i]);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int a[10];
int flag,i =0,t,j;
//使用for循环生成10个随机数
while(i<10){
srand((unsigned)time(NULL));
t = rand()%10;
flag=0;
for(j=0;j<i;j++){
if(a[j] ==t){
flag =1;
}
}
if(flag==0){
a[i]=t;
i++;
}
}
for (i = 0; i < 10; i++) {
printf("%d ", a[i]);
}
return 0;
}