如何用C语言产生10000个不重复的随机整数?并且把它写入到一个文本文件中作为其他函数测试用的数据。

最好注释一下思想哦!
2025-05-02 13:37:13
推荐回答(3个)
回答1:

把产生的数放进数组里面,然后写入文件就好。可以使用C语言的random函数

回答2:

用快速跳蚤算法吧,可以获得不同随机数,你这数没有范围的话就默认是RAND_MAX了,算法思想是:
For i=0 to RAND_MAX
a(i)=i
Next
For i=0 to (x-1)
r=rand()
Swap a(i),a(r)
Next
For i=1 to x
b(i)=a(i-1)

回答3:

先说思想:
一、用一个数组a[10000]保存结果。
二、循环10000次,每次产生第i个数x,(i从0到9999),按顺序插入在a[0..i-1]中适当位置。若已存在相等的数,则重新生成一个数再插入。
(提示:用二分法搜索a[0..i-1],可得插入位置k,该位置上的数a[k]若等于x,则表明已存在;若不等,则可插入:把a[k..i-1]逐个右移一个位置,然后x放入a[k]。)
三、完毕。