用C语言写一个从0到80的数字中随机生成3个不重复的数字的程序
时间: 2024-03-19 22:45:56 浏览: 70
好的,下面是用C语言实现的代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int nums[81], i, j, k;
srand((unsigned)time(NULL)); // 设置随机数种子
for (i = 0; i <= 80; i++) {
nums[i] = i;
}
// 从0到80中随机选3个不重复的数字
i = rand() % 81;
j = rand() % 81;
k = rand() % 81;
while (j == i) {
j = rand() % 81;
}
while (k == i || k == j) {
k = rand() % 81;
}
printf("%d %d %d\n", nums[i], nums[j], nums[k]);
return 0;
}
```
这个程序中,首先定义了一个包含0到80的数组 `nums`,然后使用 `srand` 函数以当前时间作为随机数种子,保证每次运行程序时都会得到不同的随机数序列。接下来,使用 `rand` 函数从 `nums` 数组中随机选出3个不重复的数字,并将它们输出到屏幕上。
相关问题
用C语言写一个从0到80的数字中随机生成5个不重复的数字的程序
好的,以下是一个简单的C语言程序,可以生成5个不重复的0到80之间的随机整数:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define MAX_NUM 80
#define NUM_COUNT 5
int main()
{
int nums[NUM_COUNT] = {0}; // 存放生成的随机数
int i, j;
srand(time(NULL)); // 用系统时间初始化随机种子
// 生成随机数
for (i = 0; i < NUM_COUNT; i++) {
int num = rand() % MAX_NUM + 1; // 生成1到80之间的随机整数
// 判断是否已经生成过该数
for (j = 0; j < i; j++) {
if (nums[j] == num) {
i--; // 如果已经生成过该数,重新生成
break;
}
}
if (j == i) {
nums[i] = num; // 如果没有生成过该数,存入数组
}
}
// 输出生成的随机数
printf("生成的随机数为:");
for (i = 0; i < NUM_COUNT; i++) {
printf("%d ", nums[i]);
}
printf("\n");
return 0;
}
```
这个程序使用了rand()函数来生成随机数,srand()函数用系统时间初始化随机种子,以保证每次运行程序生成的随机数都不同。程序先生成一个1到80之间的随机整数,然后判断是否已经生成过该数,如果已经生成过就重新生成,直到生成一个还没有出现过的数。最后输出生成的5个随机数。
用C语言写一个从0到80的数字中随机生成10个不重复的数字的程序
好的,以下是一个示例程序:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define NUM_COUNT 10
#define MAX_NUM 80
int main() {
int nums[NUM_COUNT] = {0}; // 存放随机数的数组
int i, j, num;
srand(time(NULL)); // 设置随机种子
// 生成不重复的随机数
for (i = 0; i < NUM_COUNT; i++) {
do {
num = rand() % MAX_NUM + 1; // 生成1~80之间的随机数
// 检查是否已经存在于数组中
for (j = 0; j < i; j++) {
if (nums[j] == num) {
break;
}
}
} while (j < i); // 如果已存在,则重新生成
nums[i] = num; // 将随机数存入数组
}
// 输出随机数
printf("随机生成的%d个不重复的数字为:", NUM_COUNT);
for (i = 0; i < NUM_COUNT; i++) {
printf("%d ", nums[i]);
}
printf("\n");
return 0;
}
```
程序使用 `srand` 函数设置随机数种子,然后使用 `rand` 函数生成1~80之间的随机数。每次生成随机数时,程序会检查该数是否已经存在于数组中,如果已经存在,则重新生成。最后输出生成的随机数。
阅读全文