随机数生成
在C++中,有多种方式可以生成和输出随机数。以下是几种常见的方式:
1. 使用 <cstdlib>
头文件中的 rand()
函数:
#include <iostream>
#include <cstdlib>
#include <ctime>int main() {// 设置种子,通常使用当前时间std::srand(std::time(0));// 生成随机数int random_number = std::rand();// 输出随机数std::cout << "Random Number: " << random_number << std::endl;return 0;
}
2. 使用 <random>
头文件中的 <random>
类:
#include <iostream>
#include <random>int main() {std::random_device rd;std::mt19937 gen(rd());std::uniform_int_distribution<int> dis(1, 100); // 生成1到100之间的随机整数// 生成随机数int random_number = dis(gen);// 输出随机数std::cout << "Random Number: " << random_number << std::endl;return 0;
}
3. 使用 <cstdlib>
头文件中的 rand()
函数结合取余操作:
#include <iostream>
#include <cstdlib>
#include <ctime>int main() {// 设置种子,通常使用当前时间std::srand(std::time(0));// 生成1到100之间的随机整数int random_number = std::rand() % 100 + 1;// 输出随机数std::cout << "Random Number: " << random_number << std::endl;return 0;
}
4. 使用 <random>
头文件中的 <random>
类结合 <iostream>
:
#include <iostream>
#include <random>int main() {std::random_device rd;std::mt19937 gen(rd());std::uniform_int_distribution<int> dis(1, 100); // 生成1到100之间的随机整数// 生成随机数并直接输出std::cout << "Random Number: " << dis(gen) << std::endl;return 0;
}
这些是一些常见的生成和输出随机数的方式。每种方式都有其适用的场景,可以根据具体需求选择合适的方法。注意在使用 <random>
头文件时,建议使用 <random>
类来生成更高质量的随机数。