【发布时间】:2017-11-26 18:20:37
【问题描述】:
我被分配创建一个非重复数字生成器,它生成 7 个数字。我使用了 rand 函数。但不确定如何确保数字不重复。感谢您的帮助
int i, n;
time_t t;
n = 7;
srand((unsigned) time(&t));
for( i = 0 ; i < n ; i++ ) {
printf("%d\t", rand() % 35);}
【问题讨论】:
-
用数字1-N填充一个数组,随机打乱数组,从数组中取出前7个数字。洗牌:对于 1 到 N 中的 i,交换元素 i 和从范围 i..N 中随机选择的元素。或者进行网络搜索:这是一个非常常见的问题。