51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 7704|回复: 20
打印 上一主题 下一主题

[求助] 关于loadrunner中rand()函数的使用

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2011-10-19 16:58:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
有两个问题请教大家:
1. srand(time(NULL));
我不明白这个函数和随机取值有什么关系。又和当前时间有啥关系。最好能介绍一下工作原理。

2.  请教大家rand()的取值范围:
例如: i=rand()%6+15, 取值范围包括15和21吗?还是只有16,17,18,19,20.

谢谢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2011-10-19 17:01:33 | 只看该作者
1初始化随机
2.15-21
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2011-10-20 10:26:55 | 只看该作者
回复 1# zhangchaoy
rand()函数是生成一个随机的非负整数函数。
Example 1
The following example generates a random number restricted to a specific zero-based range using the mod (%) operator.

    //srand is called before rand

    srand(time(NULL));

    /* Generate a random number from 0-99 */

    lr_output_message

        ("A number between 0 and 99: %d\n", rand() % 100);

Output:
Action.c(7): A number between 0 and 99: 72

Example 2
The following example generates a random number, rNum, between 20 and 29 using the mod (%) operator and addition.

int rNum;

    //srand is called before rand

    srand(time(NULL));

/* The order of evaluation is first rand(), then the modulus,

    then the addition. The command below is equivalent to :

    rNum = rand() % 10;

        rNum is now a number between 0-9

    rNum += 20;

        rNum is now between 20 and 29

*/

    rNum= rand() % 10 + 20;

你的i=rand()%6+15返回的是15-21
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2011-10-20 15:51:04 | 只看该作者
谢谢两位了。
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2011-10-20 16:13:29 | 只看该作者
15-20
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2011-10-20 16:43:57 | 只看该作者
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2012-2-15 11:42:45 | 只看该作者
有用,赞!
回复 支持 反对

使用道具 举报

  • TA的每日心情
    奋斗
    2022-5-8 19:23
  • 签到天数: 137 天

    连续签到: 1 天

    [LV.7]测试师长

    8#
    发表于 2012-2-15 13:45:24 | 只看该作者
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2022-5-8 19:23
  • 签到天数: 137 天

    连续签到: 1 天

    [LV.7]测试师长

    9#
    发表于 2012-2-15 13:45:27 | 只看该作者
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2012-3-3 15:26:44 | 只看该作者
    没看懂 - -
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2012-3-3 17:12:47 | 只看该作者
    15-20,云层叔叔误导人啊
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
    发表于 2012-3-4 00:00:21 | 只看该作者
    确实是15-20
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2018-6-18 17:17
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]测试排长

    13#
    发表于 2012-3-4 14:49:44 | 只看该作者
    15-20,云层叔叔误导人啊
    cu_zhuang 发表于 3/3/2012 17:12



        云层老师开小差了肯定,没这么算术 的、、、
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
    发表于 2012-3-4 23:24:50 | 只看该作者
    错,是我当做用rand()*数字了,这里用的是%取余
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2018-6-18 17:17
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]测试排长

    15#
    发表于 2012-3-5 20:08:32 | 只看该作者
    不明白,rand()*数字取的是整数还是四舍五入整数?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    16#
    发表于 2012-3-8 14:15:38 | 只看该作者
    15-20

    srand是随机种子生成,
    接下来在使用rand,
    相同2次随机数概率降低。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    17#
    发表于 2012-3-8 23:25:06 | 只看该作者
    srand是始随机种子的,srand(time(NULL))进行初始化,
    根据公式:rand()%(max—min+1)+min  ,算一下就知道是15~20啦,呵呵
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2015-11-25 15:40
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    18#
    发表于 2012-3-9 09:53:33 | 只看该作者
    回复 3# linlinxu


        你开小差了……
           /* Generate a random number from 0-99 */

        lr_output_message

            ("A number between 0 and 99: %d\n", rand() % 100);
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    19#
    发表于 2012-4-24 13:29:55 | 只看该作者
    15——20
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    20#
    发表于 2012-7-24 09:00:43 | 只看该作者
    学习啦
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-17 22:03 , Processed in 0.083893 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表