【每日例题】蓝桥杯 c++ 绘制表格

发布时间 2023-11-09 09:43:42作者: 山远尽成云

绘制表格

题目

蓝桥杯 绘制表格

题目分析

  1. 阅读题目,我们可以将表格分为四个部分,头、中间的竖线部分与横线部分、尾。因此,我们可以启用多个for循环分别解决
  2. 在第一行,我们也可以分为三个部分,第一部分符号为:“┌”,第二部分的中间部分使用for循环输入:“─┬”,第三部分符号为:“─┐”
  3. 在最后一行,我们也可以分为三个部分,第一部分符号为:“└”,第二部分的中间部分使用for循环输入:“─┴”,第三部分符号为:“─┘”
  4. 在中间部分,奇数行的符号为"│ ",偶数行的符号分为三个部分,第一部分符号为:"├",第二部分的中间部分使用for循环输入:"─┼",第三部分符号为:“─┤”
  5. 值得注意的是,由于题目没有说明很清楚,实际上在横方向的每两个符号的中间都需要添加横线符号:“-”

代码

#include <iostream>
using namespace std;
int main()
{
    int n,m;
    cin>>n>>m;
    for(int i=1;i<=n*2+1;i++)//以行为标志
    {
        if(i==1)//第一行
        {
            cout<<"┌";//第一部分
            for(int j=1;j<=m-1;j++)//第二部分
            {
                cout<<"─┬";
            }
            cout<<"─┐"<<endl;//第三部分
        }
        else if(i==n*2+1)//最后一行
        {
            cout<<"└";//第一部分
            for(int j=1;j<=m-1;j++)//第二部分
            {
                cout<<"─┴";
            }
            cout<<"─┘"<<endl;//第三部分
        }
        else if(i%2==0)//中间奇数行
        {
            for(int j=1;j<=m;j++)
            {
                cout<<"│ ";
            }
            cout<<"│"<<endl;
        }
        else//中间偶数行
        {
            cout<<"├";//第一部分
            for(int j=1;j<=m-1;j++)//第二部分
            {
                cout<<"─┼";
            }
            cout<<"─┤"<<endl;//第三部分
        }
    }
    return 0;
}