c语言--生成1~20内无重复的随机数

本文介绍了如何使用C语言生成1到20之间不重复的随机数。通过创建数组,逐个生成随机数并与已生成的数比较,避免重复,直至数组填满。此方法确保了所有生成的随机数都是唯一的。
摘要由CSDN通过智能技术生成

生成1~20内无重复的随机数

思路:
1、生成单个随机数,并依次存放入数组中
2、将1生成的随机数与之前的随机数对比
3、若重复,则说明随机数无效,数组下标减1,重复1、2步骤;若不重复,则说明随机数有效,重复1、2步骤。
4、直到所有数组随机数生成完毕。

#include<stdio.h>
#define n 20 
int main(){
   
	int i
  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 以下是一个生成1-100之间随机数C语言代码段: ```c #include <stdio.h> #include <stdlib.h> #include <time.h> int main() { int num; srand(time(NULL)); // 初始化随机数种子,使每次生成随机数不同 num = rand() % 100 + 1; // 生成1-100之间的随机数 printf("随机数为 %d\n", num); return 0; } ``` 在上面的代码中,使用了标准库函数 `rand()` 生成随机数,并结合取余运算和加一操作,生成1-100之间的随机数。同时,使用了时间函数 `time()` 作为随机数种子,使每次生成随机数都不同。 ### 回答2: #include <stdio.h> #include <stdlib.h> #include <time.h> int main() { srand(time(0)); // 设置随机种子为当前时间 int randomNumber = rand() % 100 + 1; // 生成1-100范围内的随机数 printf("随机数:%d\n", randomNumber); return 0; } 以上是用C语言编写的生成1-100随机数的代码。首先,我们需要包含stdio.h和stdlib.h这两个头文件,分别用于标准输入输出和随机数生成函数的调用。 然后,我们使用time函数获取当前的时间,并将其作为随机种子传递给srand函数。srand函数用于初始化伪随机数生成器。 接下来,我们使用rand函数生成一个伪随机数,并使用取模运算符将其限制在1-100的范围内。最后,我们将随机数通过printf函数输出到屏幕上。 最后,我们返回0表明程序正常结束。 ### 回答3: 下面是一个用C语言编写的生成1-100之间随机数的代码: ```c #include <stdio.h> #include <stdlib.h> #include <time.h> int main() { int i, num; srand(time(0)); // 随机数种子初始化,使用系统时间作为种子 printf("生成随机数为:\n"); for (i = 0; i < 10; i++) { num = rand() % 100 + 1; // 生成1-100之间的随机数 printf("%d ", num); } return 0; } ``` 首先,我们需要包含`stdio.h`头文件,这样才能使用`printf`函数,用于输出结果。同时,还需要包含`stdlib.h`和`time.h`头文件,分别用于使用`rand`函数和初始化随机数种子。 接下来,我们使用`srand(time(0))`初始化随机数种子。`time(0)`函数用于获取当前时间,作为种子值传给`srand`函数。 然后,在一个`for`循环中,我们重复生成10个随机数,并将每次生成随机数打印出来。`rand()`函数用于生成一个伪随机数,`% 100`用于限制生成随机数在0-99之间,再加上1就得到1-100之间的随机数。 最后,程序返回0,表明程序运行完毕。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蓝焰鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值