C语言 用srand每次产生一个随机数,并储存在数组里,且要保证每个随机数不重复,如何写?

如题所述

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

void main()
{
int i,j;
int x[10];
int v = 50,n=10;
srand((unsigned)time(NULL));
x[0] = rand() % v +1;
for (i=0;i<n;i++) {
Lab: x[i] = rand() % v +1;
for (j=0;j<i;j++) { if (x[i] == x[j]) goto Lab;} // 比较一下,相同数则不要它,返回再取
}
for(i=0;i<n;i++) printf("%2d\n",x[i]);
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-02-23
说下 方法:
产生一个 随机数
判断 这个 随机数 是不是 和 已有的 相等, 不等 则保存
相似回答