编写一个c++程序,自动随机生成100000行vector<double>类型的经纬度二维数组,例如: std::vector<std::vector<double>> points = {{120.275, 32.023}, {-120.138, -28.256}};
时间: 2024-03-23 08:40:45 浏览: 62
可以使用如下的代码来自动生成100000行的经纬度二维数组:
```c++
#include <iostream>
#include <vector>
#include <cstdlib>
#include <ctime>
int main()
{
srand(time(NULL)); // 初始化随机数生成器
std::vector<std::vector<double>> points(100000, std::vector<double>(2));
for (int i = 0; i < 100000; ++i) {
points[i][0] = (double)rand() / RAND_MAX * 360 - 180; // 生成经度,范围为[-180, 180]
points[i][1] = (double)rand() / RAND_MAX * 180 - 90; // 生成纬度,范围为[-90, 90]
}
// 输出前10个点的经纬度
for (int i = 0; i < 10; ++i) {
std::cout << "(" << points[i][0] << ", " << points[i][1] << ")" << std::endl;
}
return 0;
}
```
这个程序使用rand()函数生成随机数来生成经度和纬度,然后使用std::vector嵌套std::vector的方式来创建二维数组。这个程序也输出了前10个点的经纬度,可以用来验证生成的数据是否正确。
阅读全文