随机生成30个10~99之间不重复的整数。使用c语言
时间: 2024-02-15 16:02:16 浏览: 86
好的,以下是使用C语言实现的代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int nums[30]; // 定义保存整数的数组
int i, j, flag;
srand(time(NULL)); // 初始化随机数种子
for (i = 0; i < 30; i++) {
// 生成10~99之间的随机整数,且保证不重复
do {
nums[i] = rand() % 90 + 10;
flag = 0;
for (j = 0; j < i; j++) {
if (nums[j] == nums[i]) {
flag = 1;
break;
}
}
} while (flag == 1);
printf("%d ", nums[i]); // 输出生成的随机整数
}
printf("\n");
return 0;
}
```
与之前的代码相比,我们在生成随机整数的过程中添加了一些判断,以保证生成的整数不重复。具体来说,我们使用`do...while`循环来不断生成随机整数,直到生成一个不与之前的整数重复的数为止。在每次生成新的随机整数时,我们都遍历之前生成的所有整数,如果有重复的,则将`flag`设置为1。如果`flag`为1,则说明当前生成的整数与之前的某个整数重复,需要重新生成。如果`flag`为0,则说明当前生成的整数不重复,可以将其保存到数组中,并输出。
阅读全文