如何从文本文件读取到二维数组并在c ++中打印它

问题描述 投票:-1回答:1

你好,我目前正在学校学习c ++,并有一个项目需要帮助。

我必须编写一个程序,以读取座位数并将其存储在二维数组中。空座位是标签,如果用户购买了座位,它将变成*。 seat.txt文件中的奇数行具有15个席位,偶数具有20个席位。

我希望能够打印并在用户购买座椅并用*切换#时对其进行更新。

座位txt文件如下所示:

 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9
 # # # # # # # # # # # # # # # # # # # #
 # # # # # # # # # # # # # # #     
 # # # # # # # # # # # # # # # # # # # #
 # # # # # # # # # # # # # # #     
 # # # # # # # # # # # # # # # # # # # #
 # # # # # # # # # # # # # # #     
 # # # # # # # # # # # # # # # # # # # #
 # # # # # # # # # # # # # # #     
 # # # # # # # # # # # # # # # # # # # #
 # # # # # # # # # # # # # # #     
 # # # # # # # # # # # # # # # # # # # #
 # # # # # # # # # # # # # # #     
 # # # # # # # # # # # # # # # # # # # #
 # # # # # # # # # # # # # # #     
 # # # # # # # # # # # # # # # # # # # #

这是我的代码:

const char EMPTY = '#';
char ab[15][20];
ifstream in;
in.open("seats.txt");
for(int i=0;i<15;i++){
    for(int x=0; x<20; x++){
           in>>ab[i][x];

    }
}

for (int i = -1; i < rows; i++)
        {
            for (int j = -1; j < columns; j++)
                ab [i][j] = EMPTY;
        }

for (int count = 0; count < 15; count++)
        {
            cout << endl << "Row " << (count + 1);
            for (int count2 = 0; count2 <20; count2++)
            {
                cout << "  " <<  ab[count] [count2];
            }
        }
            cout << endl;
    

你好,我目前正在学校学习c ++,并有一个项目需要帮助。我必须编写一个读取座位数并将其存储在二维数组中的程序。空的...

c++ arrays file import
1个回答
0
投票

欢迎使用堆栈溢出!您的代码中有一个小错误,但是总体来说,如果您是新手,这是相当不错的! 首先,您需要区分奇数行和偶数行。通过添加if语句并具有不同的循环,可以轻松解决此问题。 (或者,如果是偶数,则可以将x设置为5而不是0)为了更改您的文件,您还需要导出到该文件。假设某客户订购了x座y。最后,考虑按照以下方式添加一些内容:

© www.soinside.com 2019 - 2024. All rights reserved.