C语言怎么产生30-100的随机数?

C语言怎么产生30-100的随机数?

C语言怎么产生33-100的随机数?

利用C提供的伪随机数产生函数rand实现。为了获得“逼真随机”效果,随机数产生前应当用当前时间值调用库函数srand来设定伪随机数产生器的初始值(常称下种子)。rand函数默认生成0~32767的随机数,为达到题设30~100的要求,要将由rand生成的随机数对71取模处理来获得0~70的范围,然后再+30便得到题解。代码如下(以产生100个0~70的范围随机数为例):

#include "stdio.h"
#include "stdlib.h"//调用srand和rand需包含此文件
#include "time.h"//调用time需包含此文件
int main(int argc,char *argv[]){
int n,l;
srand((unsigned)time(NULL));//调用库函数sran为伪随机产生器下种子
for(l=n=0;n<100;n++)
printf(++l%15 ? "%4d" : "%4d\n",rand()%71+30);//由rand()%71+30获得30~100的范围
if(l%15)
printf("\n");
return 0;
}

运行样例如下:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-07-12
#include <time.h> //用到了time函数 
 
int main()
{
   srand((unsigned) time(NULL)); //用时间做种,每次产生随机数不一样
  
   for (int i=0; i<10; i++)
   {
     int number = rand() % 99 + 30;  //产生30-100的随机数
     printf("%d\n", number);
   }
    
   return 0;
}

第2个回答  2013-09-17
int main(void)  
{
int i, j;
  randomize(); 
i = 30 + random() * 70; 
; = 33 + random() * 67;
printf("%d %d\n", i, j);  
return 0;  
}
第3个回答  2013-09-17
#include <stdlib.h>
#include <time.h>

int GetRandom()
{
srand(time(0));
return rand()%71 + 30;
}本回答被网友采纳
第4个回答  2013-09-17
num1=70*random()+30;
num2=67*random()+33;