关于 C 随机数生成的问题

发布于 科技 2024-06-09
8个回答
  1. 匿名用户2024-01-29

    当标志为 false 时,您的程序将无法继续获得正确的结果,因为 temp 是随机生成的,因此在某些情况下,mins[i]==temp 可能为 true。 我修改了两个地方,步骤如下:

    void main();

    int temp=0;

    int i,a=0;

    srand((unsigned)time(null));*播种*

    while(a<=9)

    bool flag=true;这里的标志从全局变量改为局部变量,每次循环,设置一次。

    temp=rand() 99;

    for(i=0;i<10;i++)

    if(mins[i]==temp)

    if(flag)

    mins[a]=temp;

    cout

  2. 匿名用户2024-01-28

    gettickcount();

    函数的原型是 dword gettickcount(void),返回值以 32 位双字类型 dword 存储,所以可以存储的最大值在 2-1 ms 左右,所以如果系统运行超过一天,这个数字会减少到 0

    所以这个随机时间需要限制,否则可以运行几天。

  3. 匿名用户2024-01-27

    问题是你没有清除每个循环中的标志

    因此,如果存在重复的 temp,则标志将始终为 false,并且永远不会执行 a++ 语句。

  4. 匿名用户2024-01-26

    if(mins[i]==temp) 和 mins[a]=temp; 这个冲突,你for(int i=0; i<10;i++)

    if(mins[i]==temp)

    已更改为。 for(int i=a;i<10;i++)if(mins[a]==temp)

    没关系。

  5. 匿名用户2024-01-25

    将 flag=true 添加到末尾的 while 循环中; 就是这样。

  6. 匿名用户2024-01-24

    你的程序的长度与你的标志有关,一旦你的标志设置为 false,我不知道是否有任何方法可以增加你的 A。

  7. 匿名用户2024-01-23

    系统提供了一个生成随机数的函数,即 rand() 函数。

    它根据系统内的随机种子生成随机数。

    直接调用 rand 函数将返回一个需要包含头文件的随机数。

  8. 匿名用户2024-01-22

    rand() 以 include 为标准库的随机函数!

相关回答
14个回答2024-06-09

1.随机类的下一个方法,在两个整数之间生成一个随机数。 语法格式为: >>>More

11个回答2024-06-09

在 VC 中,有两个函数可以设计为随机数。

srand() and rand() >>>More

9个回答2024-06-09

我生成了 10 个 1-10 的随机数,房东可以测试它们。 >>>More

5个回答2024-06-09

方法一:使用srand函数; srand 函数可以以两种不同的方式使用:直接输入随机数种子并使用系统时间初始化随机数种子; >>>More

5个回答2024-06-09

这里使用了 rand() 函数和 srand() 函数,C C++ 中没有 random(int number) 函数。 >>>More