【发布时间】:2021-01-06 15:58:04
【问题描述】:
我想生成 7 个不同的数字 (0-9) - 第一个数字不应该是 0- 并将它们放入一个数组中。每个数字都应该是唯一的。我知道我做错了什么,但我不知道我该怎么做。
int arr[7], j, i;
srand(time(NULL));
for (i = 0; i < 7; i++)
{
arr[i] = rand() % 10;
if (arr[0] == 0)
arr[0] = rand() % 10;
}
for (i = 0; i < 7; i++)
{
for (j = 0; j < 7; j++)
{
if (i == j) {
j++;
}
if (arr[i] == arr[j])
arr[j] = rand() % 10;
}
}
printf("\n");
for(j=0;j<7;j++)
printf("\n%d ", arr[j]);
【问题讨论】:
-
这能回答你的问题吗? Random and Different Numbers in C
-
我会生成一个随机的 排列 数字 0-9,然后选择前 8 个。如果第一个为零,则从第二个开始选择。不知道没有
0作为第一个数字(并且有任何其他数字)如何与 any 彩票规则保持一致。 -
奇怪,5 小时前的一个非常精确的复制品!
标签: c