标题:【求助】随机数函数放在自定义函数,再利用循环语句每次结果却一样(含源代 ...
只看楼主
dj踢奎拉
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2019-2-20
结帖率:0
已结贴  问题点数:20 回复次数:4 
【求助】随机数函数放在自定义函数,再利用循环语句每次结果却一样(含源代码)
楼主先把srand函数(设置时间种子)放在自定义函数(返回值为int型)里,再在main函数写了for语句,循环调用此自定义函数,却发现每次结果都一样,怎么破?
源代码:#include<iostream>
#include<stdlib.h>
#include<time.h>
using namespace std;
int whatever()
{
    int a;
    srand((int)time(0));
    a=rand() % 10;
    return a;
}
int main()
{
    int k;
    for (k = 0; k < 10; k++)
    {
        cout << whatever() << " ";
    }
    cout << endl;
}

[此贴子已经被作者于2019-2-20 12:44编辑过]

搜索更多相关主题的帖子: 函数 自定义 结果 源代码 int 
2019-02-20 12:39
Jonny0201
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:52
帖 子:488
专家分:2603
注 册:2016-11-7
得分:10 
#include<iostream>
#include<stdlib.h>
#include<time.h>
using namespace std;
int whatever()
{
    int a;
    //srand((int)time(0));
    a=rand() % 10;
    return a;
}
int main()
{
    int k;
    srand((int)time(0));
    for (k = 0; k < 10; k++)
    {
        cout << whatever() << " ";
    }
    cout << endl;
}
2019-02-20 14:46
dj踢奎拉
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2019-2-20
得分:0 
回复 2楼 Jonny0201
问题已解决,十分感谢!
2019-02-20 15:47
花脸
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:9
帖 子:788
专家分:907
注 册:2017-1-4
得分:10 
不能再for循环内设置种子,
收到的鲜花
  • cstdio2019-02-20 19:56 送鲜花  1朵  
2019-02-20 15:53
hualingg415
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2019-6-2
得分:0 
切记该函数只有放在主函数才会生效,否则放在局部函数需要增加static
2019-06-06 16:22



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-493135-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.293633 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved