怎么用c语言编一个程序从0——80中随机抽取40个数

在 math函数中rand怎么用?
2024-12-16 02:54:41
推荐回答(4个)
回答1:

你用rand函数返回值%81,得到的结果必然在0-80之间。

#include
main
{
int i;
srand(time(0)); //初始化随机种子
i = rand(); //产生随机数
}

首先,加一个"#include
然后设一个变量,如j,j=rand(),就可以给j赋一个1~32767的随机数,如果要获得一个随机函数的十位(其它类似),只需令j=j%10就行.

添加头文件 #include
然后在文件中添加 srand((unsigned)time(NULL));
srand()是用来初始化随机种子数的,因为rand的内部实现是用线性同余法做的,它不是真的随机数,只不过是因为其周期特别长,所以有一定的范围里可看成是随机的.
上面是有个随机种子的说明及方法,为了避免重复.然后再 用 随机函数,rand() 就行了.
头文件是 stdlib.h

random() 产生随机数为 0或1
random(n) 产生随机数为 0到n之间的一个随机数
rand() 产生 0到32768之间的一个随机数

函数名: randomize
功 能: 初始化随机数发生器
用 法: void randomize(void);
程序例:

#include
#include
#include

int main(void)
{
int i;

randomize();
printf("Ten random numbers from 0 to 99\n\n");
for(i=0; i<10; i++)
printf("%d\n", rand() % 100);
return 0;
}

回答2:

/*我在visual c ++ 6.0 环境下通过了
在turbo c环境里面好像要用randomize()初始化随机数生成器
然后用int random(int num)产生一个随机数
*/
#include
#include /*for srand() and rand()*/
#include /*for time()*/
int main(int argc, char *argv[])
{
int i = 0 ;
int n ;

/*初始化随机数生成器*/
srand(time(NULL));

/*产生40个随机数*/
for( i = 0 ; i < 40 ; i ++ )
{
/*获得一个 0 ~ 80 的随机数*/
n = rand() % 80 ;

printf("%d\t",n);
}
printf("\n");
getchar();
return 0;
}

回答3:

用法一楼很清楚了
你要的程序嘛就是

#include
#include
#include

int main(void)
{
int i;

printf("Ten random numbers from 0 to 99\n\n");
for(i=0; i<40; i++)
printf(" %3d ", rand() % 100);
return 0;
}

回答4:

用法一楼很清楚了
你要的程序嘛就是
#include

#include

#include

int
main(void)
{
int
i;
printf("Ten
random
numbers
from
0
to
99\n\n");
for(i=0;
i<40;
i++)
printf("
%3d
",
rand()
%
100);
return
0;
}