A. c语言中如何生成1个0到1的随机数
C语言中生成1个0到1的随机数可以执行语句:float b=rand()/(RAND_MAX+1.0);
解析:
标准C库中函数rand()可以生成0~RAND_MAX之间的一个随机数,其中RAND_MAX 是stdlib.h 中定义的一个整数,它与系统有关。rand()函数没有输入参数,直接通过表达式rand()来引用;
用函数rand取得的随机数除以(RAND_MAX+1.0),即可确保得到的结果在0到1之间。ISO IEC 9899 2011 (C11)标准中未规定 RAND_MAX 的具体数值。但该标准规定了RAND_MAX 的值应至少为32767。编程的时候,不应该对 RAND_MAX 的具体数值做任何假设。
(1)c语言头文件怎么写随机数字扩展阅读:
相关说明:
1、因为rand()函数是按指定的顺序来产生整数,因此每次执行上面的语句都打印相同的两个值,所以说C语言的随机并不是真正意义上的随机。
2、为了使程序在每次执行时都能生成一个新序列的随机值,我们通常通过为随机数生成器提供一粒新的随机种子。函数 srand()(来自stdlib.h)可以为随机数生成器播散种子。只要种子不同rand()函数就会产生不同的随机数序列。srand()称为随机数生成器的初始化器。
3、随机种子(Random Seed)是计算机专业术语,一种以随机数作为对象的以真随机数(种子)为初始条件的随机数。一般计算机的随机数都是伪随机数,以一个真随机数(种子)作为初始条件,然后用一定的算法不停迭代产生随机数。
B. c语言怎么写1到100中随机数啊
包含头文件stdlib.h,产生的随机数为rand()%100+1,用一个变量保存这个随机数就行,当然也还有比较复杂和完善的产生随机数的方法,不过这个是最简单的
C. 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楼抄袭我。。。
D. 如何用C语言编写随机生成数或者字母的程序
生成随机数 用函数rand就可以
引用头文件stdlib.h
调用rand()就生成一个随机数。
要生成字母 可以用
rand()%26+'A'
改成a就是小写字母。
E. 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;
}
程序运行结果如下:
(5)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;
}
F. C语言如何产生一定范围内一定数量的不同随机数
源代码如下:
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <unistd.h>
#define a 16807//or 48271
#define m 2147483647
#define q (m/a)
#define r (m%a)
static long int seed = 1;
//return rand long in [1,m]
long int pm_rand(void)
{
long hi = seed / q;
long lo = seed % q;
long tmp = a * lo - r * hi;
if(tmp > 0)
seed = tmp;
else
seed = tmp + m;
return seed;
}
int main(void)
{
for(int i = 0;i < 100;++i)
printf("%ld ",pm_rand());
puts("");
return 0;
}
(6)c语言头文件怎么写随机数字扩展阅读
不指定范围产生随机数的源代码
#include<stdio.h>
#include<stdlib.h>
int main()
{
int i;
for(i=0; i<10; i++) //随机产生10个数。
{
printf("%d
", rand());
}
return 0;
}
G. c语言,如何产生随机数
具体代码如下:
#include <stdio.h>
#include <stdlib.h>
#include <time.h> //用到了time函数
int main()
{ int i,number;
srand((unsigned) time(NULL)); //用时间做种,每次产生随机数不一样
for (i=0; i<50; i++)
{
number = rand() % 101; //产生0-100的随机数
printf("%d ", number);
}
return 0;
}
有以下几种情况:
(1) 如果你只要产生随机数而不需要设定范围的话,你只要用rand()就可以了:rand()会返回一随机数值, 范围在0至RAND_MAX 间。RAND_MAX定义在stdlib.h, 其值为2147483647。
(2) 如果你要随机生成一个在一定范围的数,你可以在宏定义中定义一个random(int number)函数,然后在main()里面直接调用random()函数:
例如:
rand()%100是产生0-99的随机数。
(3)但是上面两个例子所生成的随机数都只能是一次性的,如果你第二次运行的时候输出结果仍和第一次一样。这与srand()函数有关。srand()用来设置rand()产生随机数时的随机数种子。在调用rand()函数产生随机数前,必须先利用srand()设好随机数种子(seed), 如果未设随机数种子, rand()在调用时会自动设随机数种子为1。上面的两个例子就是因为没有设置随机数种子,每次随机数种子都自动设成相同值1 ,进而导致rand()所产生的随机数值都一样。
srand()函数定义 : void srand (unsigned int seed);
通常可以利用geypid()或time(0)的返回值来当做seed。如果你用time(0)的话,要加入头文件#include<time.h>
H. C语言如何编程产生随机数
楼主你好!
很高兴回答你的问题!
#include<stdio.h>
#include<windows.h>
#include<time.h>
#include<stdlib.h>
int main()
{
int num;
srand((unsigned)time(NULL));
num = rand()%100+1;
printf("%d\n",num);
return 0;
}
上面的是参数一个1到100之间的随机数的例子!主要用到rand()函数,它能够随机参数一个0到unsigned int的最大值之间的一个随机数,我们可以通过%控制随机数参数的范围!差拍迅在使用rand()需要调虚此用srand()种子器,不然你每次得到都是同一个数!具体用法可以去网上查查贺颂!
希望我的回答对你有帮助!
望采纳!谢谢!
I. 如何在C语言中产生一定范围的随机数
c语言的获取随机数的函数为rand(),
可以获得一个非负整数的随机数。要调用rand需要引用头文件stdlib.h。
要让随机数限定在一个范围,可以采用模除加加法的方式。
要产生随机数r,
其范围为
m<=r<=n,可以使用如下公式:
rand()%(n-m+1)+m
其原理为,对于任意数,
0<=rand()%(n-m+1)<=n-m
于是
0+m<=rand()%(n-m+1)+m<=n-m+m
即
m<=rand()%(n-m+1)+m<=n