当前位置:首页 » 编程语言 » c语言里怎么随机取一个数
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言里怎么随机取一个数

发布时间: 2022-04-23 06:59:48

1. c语言怎么实现从一个数组中随机抽取一个元素

随机产生一个数,然后每次将数组元素的最后一个数与这个数交换,并且数组的长度减1。

int [] b = new int[100];

int t = 0, idx = 0, len = a.length;

for(int i=0;i<len;i++)

{

idx = [rand()*(len-i)];

b[i] = a[idx];

t = a[idx];

a[idx] = a[len - 1];

a[len - 1] = t;

}

return b;

2. C语言如何编程产生随机数

1、首先打开Visual
stdio
2019,依次点击文件,新建,项目新建以一个空白的项目:
2、新建新项目以后,右键点击左边的源文件,选择添加,点击添加项:
3、选择cpp,并将下方的扩展名改为.c,然后点击确定:
4、接下来就可以用编译器编译,使用rand()函数产生C语言的随机数,需要加入stdlib.h和time.h在表头,rand()函数需要给srand()函数提供一个参数,不然系统会给定一个默认的参数,如果参数为一任意的常量的话,得到的也是伪随机数:
4、按ctrl+F5就可以运行程序了,在弹出的窗口中就会看到得到的所有随机数了:

3. C语言抽取随机数怎么编写

源程序代码以及算法解释如下:

产生1-10随机数程序:

#include <iostream>

#include <time.h>

using namespace std;

int main()

{

const int n = 10;//定义随机数个数

int number[n] = { NULL };//定义随机数存储的数组

srand((unsigned)time(NULL));//初始化随机函数

number[0] = rand() % n;//第一个随机数无需比较

cout << number[0] << " ";

for (int i = 1; i < n; i++)//其余随机数循环产生

{

int j = 0;

number[i] = rand() % n;//产生随机数

while (1)

{

if (number[i] == number[j])//若有相同则继续循环重新安排随机数

{

number[i] = rand() % n;//产生随机数

j = 0;//若遇到相同的就从头遍历

continue;

}

if (j == (i - 1))//若遍历完就跳出

break;

j++;

}

cout << number[i] << " ";

}

cout << endl;

return 0;

}

程序运行结果如下:



(3)c语言里怎么随机取一个数扩展阅读:

利用vector进行随机数输出:

#include <iostream>

#include <vector>

#include <time.h>

using namespace std;

int main()

{

const int n = 10;

int randnum;

vector<int> number;

for (int i = 0; i < n; i++)

{

number.push_back(i + 1);//从尾部添加元素

cout << number[i] << " ";

}

cout << endl;

srand((unsigned)time(NULL));

for (int j = 0; j < n; j++)//其余随机数循环产生

{

randnum = rand() % (n - j);//rand函数生成的随机数是0-(n-1)

cout << number.at(randnum) << " ";

number.erase(number.begin() + randnum);

}

cout << endl;

return 0;

}

4. C语言怎么让一个变量随机取一个数

#include<stdio.h>
#include<time.h>
#include<stdlib.h>
intmain(void)
{
inta;
srand(time(NULL));
a=1+rand()%100;
printf("%d ",a);
return0;
}

5. C语言中如何随机选取数组中的数字(程序代码请写出)

应该是a[2][3]={{1,3,2},{8,0,3}} 吧

#include <iostream> //cout函数的头文件
#include <cstdlib>
#include <time.h> /* srand函数与rand函数的头文件*/

using namespace std;

int main()
{
int a[2][3]={{1,3,2},{8,0,3}},x,y,z;

srand ( (unsigned) time (NULL) );

x=rand()%2; //调用随机函数
y=rand()%3; //调用随机函数

z=a[x][y];

cout<<z<<"\n";

system ("pause");

return 0;
}

三楼,请注意素质...
那是我的版权!!

楼主,一定要注意先来后到!
我本是2楼的,后因稍作修改,没想到3楼抄袭我。。。

6. C语言中如何选取随机的数据

srand(time(0));
int
a
=
1
+
(int)rand()/RAND_MAX*99;
在一个数组里把抽取过的数放进去,每次抽时与里面的比较。有相同的重新抽取就可以了。

7. C语言中怎样生成随机数

在VC中设计到随机数有两个函数

srand() and rand()

srand() 的作用是是一个种子,提供每次获得随机数的基数而已,rand()根据种子而产生随机数

注意

1:srand() 里的值必须是动态变化的,否则得到的随机数就是一个固定数

2:其实可以不用写srand() ,只用rand()就可以了,省事,简单,例子如下

如果我们想得到一个 0-60的随机数那么可以写成

int i;

i=rand()%60;

就可以了。

当然最好有个统一的标注如下:

int i;

srand((unsigned)time( NULL ));

i=rand()%60;

这样就OK了。

8. c语言中在给出的数据中随机取数

#include

#include

#include

int
main(
)
{
int
i;
double
num
[10]=
{
1.2,
1.5,
3.5,
4.7,
2,
3,
4,
5,
6,
7
};
//
……
srand(
(unsigned)time(
NULL
)
);
//
先产生一个0

num-1
的随机数,从你的数据数组中取那个就行了。
//
产生方法rand()
%
10,产生10以内随机数。
//
比如下面产生10个随机数,及其对应的你
的数据
for(
i
=
0;
i
<
10;i++
)
printf(
"i
=
%d,
num[i]
=
%lf\n",
rand()%10,
num[i]
);
return
0;
}

9. 怎样用c语言取一个随机数

例如:
#include<stdlib.h>
int
i;
i=rand()%10;
就是取0到10(不包括10)之间的随机数

10. 怎么用C语言生成随机数

假设要生成的随机数是大于等于20且小于等于100的整数

#include<stdio.h>
#include<time.h>
#include<stdlib.h>
voidmain(){inta,b,x;
a=20;b=100;
srand((unsignedint)time(NULL));//用当前时间生成一个随机数种子
x=rand()%(b-a+1)+a;
printf("得到一个随机数:%d ",x);
}