我正在尝试在 1 到 10 之间生成 10 个唯一的随机数。我不断收到重复的数字。有人可以告诉我问题是什么吗?我的代码中缺少什么或需要修复什么?谢谢!
students[0].id = rand() % 10 + 1;
for (int i = 1; i < 10; i++)
{
students[i].id = rand() % 10 + 1;
for (int j = 0; j < i; j++)
{
if (students[i].id == students[j].id)
{
students[i].id = rand() % 10 + 1 ;
}
}
}
for (int i = 0; i < 10; i++)
{
printf("%d\n", students[i].id);
}