c++ - C++中的坐标系

标签 c++ arrays vector c++11 stdvector

<分区>

您好,我想使用 C++ 创建一个坐标系。我将从用户那里获取一些 (x,y) 坐标并使用它来制作坐标系(更多 map )样式。我怎样才能做到这一点?它需要看起来像下图。我应该使用二维数组还是 vector 以及如何使循环以不同方式进行标记?

(2,0)(4,3)(7,8) 需要看起来像

 **1************
 ***************
 ***************
 ***************
 ***1***********
 ***************
 ***************
 ********1******

这是我目前得到的代码,但问题是我不能在其中标记多个坐标。我只是用了 2 个 for 循环来完成它

for(int i = -6; i < 7; i++) 
    if (i < 0) 
        cout<<" "<<i; 
    else 
        cout<<"  "<<i; 
cout<<endl; 

for(int i = 0; i < 15; i++) 
    { 
        cout<<(char)(i + 49); 
        for(int j = -6; j < 7; j++) 
        if(i == y - 1 && j == x) 
            cout<<" x "; 
        else 
            cout<<" . "; 

        cout<<(char)(i + 49)<<endl; 
    } 

请指教。谢谢!!

最佳答案

我建议您使用 vector<string>vector<vector<char> >甚至 vector<vector<string> >取决于您打算在单元格中存储什么。如果一个单元格是单个字符,那么第一个选项可能是最好的。 之后创建 map 就非常简单了:

int n,m;
cin >> n >> m;
vector<string> a(n, string(m, '*');

我不确定“.”是什么和上面代码中的“x”,但我想象剩下的就是输入几对坐标并替换 vector<string> 中的相应元素。用'1'。

希望这对您有所帮助。

关于c++ - C++中的坐标系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12799477/

相关文章:

c++ - 在库中定义常量变量 pi

c++ - 如何在不同的 std::chrono 持续时间类型之间进行转换?

c++ - 如何将动态数组中的数组指向某物?

arrays - Kotlin 数组 <初始化

java - 将元素添加到 vector 的 vector 时出现 ArrayIndexOutofBounds 异常

c++ - 为什么在构造函数中分配器?

c++ - 模板构造函数继承的标准符合语法是什么?

java - Android.view.View错误

r - 使用 vapply 在向量上应用一个简单的函数

c++ - 更多线程,更好的性能?