随机函数
问题描述:
void main()
{
randomize();
char city[][10]={"DEL","CHN","KOL","BOM","BNG"};
int i,fly;
for(i=0;i<3;i++)
{
fly=random(2)+1;
cout<<city[fly]<<":";
}
}
什么是下面的代码片段的输出是什么?随机函数
答
如果您希望每次使用随机数生成器运行程序时都输出相同的,您希望每次都为生成器生成相同的值。例如:
#include <cstdlib>
#include <iostream>
using namespace std:
int main() {
srand(42); // generator always seeded with same value
for (int i = 0; i < 10; i++) {
cout << rand() << endl;
}
}
总是产生相同的序列。
+0
请告诉我我的代码可能的输出 – anurag18294 2010-07-11 08:14:18
答
随机(2)0或1 因此飞=随机(2)+ 1是1个或2 城市[飞]可以是 “CHN” 或 “KOL” 因为循环将重复三次,可能的答案是
- CHN:CHN:CHN
- CHN:CHN:KOL
- CHN:KOL:CHN
- CHN:KOL:KOL
- KOL:CHN:CHN
- KOL:CHN:KOL
- KOL:KOL:CHN
- KOL:KOL:KOL
嗯,什么是'randomize'和'random'?我们如何预测一个随机数? **并且'main'返回'int'!** – GManNickG 2010-07-11 08:00:07
为什么不尝试编译并运行它? – mathk 2010-07-11 08:01:05
我没有提到头文件stdlib.h – anurag18294 2010-07-11 08:02:46