我的输出是20个随机1,而不是10和1之间,任何人都可以解释为什么会发生这种情况?
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
int main()
{
srand((unsigned)time(0));
int random_integer;
int lowest=1, highest=10;
int range=(highest-lowest)+1;
for(int index=0; index<20; index++){
random_integer = lowest+int(range*rand()/(RAND_MAX + 1.0));
cout << random_integer << endl;
}
}
Run Code Online (Sandbox Code Playgroud)
输出:1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1