注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

点点滴滴

感悟人生,享受精彩。

 
 
 

日志

 
 

产生0到8的不同随机数  

2009-09-27 19:35:16|  分类: 科研 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

#include <stdlib.h>

#include <stdio.h>

#include <time.h>

main()

{

    int i,j=0,h;

    int a[8];

    time_t t; /*时间类型不是time,而是time_t,time_t是由long派生的,具体你的机器是不是long,打开time.h文件看看就知道了,要做成64位的,直接用long long就得了。 */

    srand((unsigned)time(&t));/*这也不明白*/

    a[0]=rand()%10;

   loop: for(i=1;i<8;i++)

    {

    loop1: a[i]=rand()%8;

     while(a[i]!=a[j]&j<i)/*判断产生的数是否相同,不同则在生成新的随机数*/

     {

      ++j;

     }

    

      if(i!=j)   /*不同则是中间有相同的数*/             int rand(void)   返回在0到0x7fff之间的随机数

      {                                                 int random(int num) 返回一个在0和参数num之间的随机数

                                                       int randomize(void) 通过time函数来得到一个随机数

       if(i<8)                                                

       {j=0;

          goto loop1;    /*重新产生数在比较*/                

          }

      }

     

      else

      {

       j=0;         /*重零在开始比较*/

      }

    }

    for(h=0;h<8;h++)

    {

     printf("%d,",a[h]);

     }

}

  评论这张
 
阅读(230)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017