| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2372 人关注过本帖
标题:rand()函数如何产生一定范围内的float型数啊
只看楼主 加入收藏
james230932
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:2
帖 子:162
专家分:629
注 册:2008-1-20
结帖率:91.67%
收藏
已结贴  问题点数:10 回复次数:3 
rand()函数如何产生一定范围内的float型数啊
想用rand()产生float型的 10位带2位小数的浮点型数据
搜索更多相关主题的帖子: 函数 rand float 范围 
2010-03-25 11:09
秀痘魔导士
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:6
帖 子:250
专家分:1150
注 册:2009-12-23
收藏
得分:10 
最笨的办法   
程序代码:
   
  signed   long   num;  
  int     a,   i;  
   
  randomize();  
   
  a   =   rand();  
  a   %=   0x80;  
  num   =   a;  
   
  for   (i=0;   i<3;   i++)  
  {  
      num   <<=   8;  
      a   =   rand();  
      a   %=   256;  
      num   |=   a;  
  }

long型转float 或者 double 不用说了吧?
2010-03-25 11:31
james230932
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:2
帖 子:162
专家分:629
注 册:2008-1-20
收藏
得分:0 
回复 2楼 秀痘魔导士
我是想用一下的方法产生浮点型数据,但是这样出来的数据有些满足,有些不满足。比如,随机产生的数是90,那么除以10.0后得到的不是9.0而是9
我该如何修改呢

for(i=0;i<20;i++)
        {
            data1[i]=rand()%101;
            data1[i]=data1[i]/(10.00);
        }

老天给了我十根纤纤玉指,我却用它们来挖鼻屎。
2010-03-25 11:37
秀痘魔导士
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:6
帖 子:250
专家分:1150
注 册:2009-12-23
收藏
得分:0 
回复 3楼 james230932
cout显示的吗,这是你显示的问题,对于float来说,存储方式只有一种,9.0和9没有区别,只是你输出显示的时候没声明固定小数点后几位而已
2010-03-25 13:08
快速回复:rand()函数如何产生一定范围内的float型数啊
数据加载中...
 
   



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

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