0

老师让我做一个棋盘,我做的时候 是这样的所以我有点需要交换它,但我不知道如何。

#include <iostream>
using namespace std;

int main()
{
    for(char i = 65; i < 73; i++)
    {
        cout << "\n";
        cout << i << "8" << " ";
        cout << i << "7" << " ";
        cout << i << "6" << " ";
        cout << i << "5" << " ";
        cout << i << "4" << " ";
        cout << i << "3" << " ";
        cout << i << "2" << " ";
        cout << i << "1" << " ";
        cout << "\n";
    }
}
4

2 回答 2

3

您必须在每一行上打印从 A 到 H 的字母。此外,使用循环打印数字也容易得多。

for(int i = 8; i >= 1; i--)
{
    for(char c = 'A'; c <= 'H'; c++)
    {
        std::cout << c << i << " ";
    }
    std::cout << '\n';
}
于 2021-09-25T10:55:14.153 回答
1

您可以考虑使用嵌套循环,其中外循环控制水平行数,内循环控制每行字符的打印。类似于以下内容:

#include <iostream>
using namespace std;

int main()
{
    for(int i = 8; i >= 1; i--)
    {
        for(char j = 65; j < 73; j++)
        {
            cout << j << i << " ";
        }
        cout << "\n";
    }
}

这样,外循环控制行号,从 8 开始一直到 1。内循环迭代 8 次 (A - H),外循环 1 次迭代并打印出一行。对所有 8 行重复相同的操作。

于 2021-09-25T11:03:58.887 回答