1 条题解

  • 0
    @ 2024-4-28 14:48:01

    【解题思路】

    首先,输入n值。

    然后,使用三个循环打印出H字矩阵。

    第一个循环打印上半部分,从第1行到第(n+1)/21(n+1)/2-1行。在每一行中,首先输出 | ,然后使用第二个循环输出中间的 a ,循环次数为n-2。最后,输出 | 并换行。

    接下来,使用第三个循环打印中间的横线。首先输出 | ,然后使用第二个循环输出 - ,循环次数为n2n-2。最后,输出 | 并换行。

    最后,使用第四个循环打印下半部分,从第(n+1)(n+1) / 2+12+1行到第n行。与第一个循环类似,首先输出 | ,然后使用第二个循环输出中间的 a,循环次数为n-2。最后,输出 | 并换行。

    这样就能按照题目要求打印出H字矩阵。

    【参考程序】

    #include <bits/stdc++.h>
    using namespace std;
    int n, i, j;
    int main()
    {
    	cin>>n;
    	for(i=1; i<=(n+1)/2-1; i++)
    	{
    		cout<<"|";
    		for(j=2; j<=n-1; j++)
    		{
    			cout<<"a";
    		}
    		cout<<"|"<<endl;
    	}
    	cout<<"|";
    	for(j=2; j<=n-1; j++)
    	{
    		cout<<"-";
    	}
    	cout<<"|"<<endl;
    	for(i=(n+1)/2+1; i<=n; i++)
    	{
    		cout<<"|";
    		for(j=2; j<=n-1; j++)
    		{
    			cout<<"a";
    		}
    		cout<<"|"<<endl;
    	}
    	return 0;
    
    
    }
    
    • 1

    [GESP202312 二级] 小杨的H字矩阵

    信息

    ID
    560
    时间
    1000ms
    内存
    512MiB
    难度
    3
    标签
    递交数
    568
    已通过
    308
    上传者