藍橋杯試題 歷屆試題 打印十字圖

......

 

這是一道考“cout”的題目,一定要分層,將輸出規律相同的放在一起輸出,不怕層多,就怕分錯

#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define inf 0x3f3f3f3f
#define maxn 15
#define mod 998244353
int n;

int main()
{
    cin>>n;

    if(n==0)
    {
        cout<<"..$.."<<endl;
        cout<<"..$.."<<endl;
        cout<<"$$$$$"<<endl;
        cout<<"..$.."<<endl;
        cout<<"..$.."<<endl;
        return 0;
    }

    for(int i=0;i<n;i++)
    {
        int tmp=4*n+1-i*4;
        if(i==0)
        {
            cout<<"..";
            for(int j=0;j<tmp;j++)
                cout<<"$";
            cout<<".."<<endl;
            cout<<"..";
            for(int j=0;j<tmp;j++)
                if(j==0||j==tmp-1)cout<<"$";
                else cout<<".";
            cout<<"..";
        }
        else
        {
            for(int j=0;j<=i-2;j++)
                cout<<"$.";
            cout<<"$$$.";
            for(int j=0;j<tmp;j++)
                cout<<"$";
            cout<<".$$$";
            for(int j=0;j<=i-2;j++)
                cout<<".$";
            cout<<endl;

            for(int j=0;j<=i-1;j++)
                cout<<"$.";
            cout<<"..";
            for(int j=0;j<tmp;j++)
                if(j==0||j==tmp-1)cout<<"$";
                else cout<<".";
            cout<<"..";
            for(int j=0;j<=i-1;j++)
                cout<<".$";
        }
        cout<<endl;
    }

    for(int i=n-1;i>=0;i--)
        if(i==0)cout<<"$$$.";
        else cout<<"$.";
    cout<<"$";
    for(int i=0;i<n;i++)
        if(i==0)cout<<".$$$";
        else cout<<".$";
    cout<<endl;

    for(int i=n-1;i>=0;i--)
        if(i==0)cout<<"$...";
        else cout<<"$.";
    cout<<"$";
    for(int i=0;i<n;i++)
        if(i==0)cout<<"...$";
        else cout<<".$";
    cout<<endl;

    for(int i=0;i<n;i++)
        cout<<"$.";
    cout<<"$$$$$";
    for(int i=0;i<n;i++)
        cout<<".$";
    cout<<endl;

    for(int i=n-1;i>=0;i--)
        if(i==0)cout<<"$...";
        else cout<<"$.";
    cout<<"$";
    for(int i=0;i<n;i++)
        if(i==0)cout<<"...$";
        else cout<<".$";
    cout<<endl;

        for(int i=n-1;i>=0;i--)
        if(i==0)cout<<"$$$.";
        else cout<<"$.";
    cout<<"$";
    for(int i=0;i<n;i++)
        if(i==0)cout<<".$$$";
        else cout<<".$";
    cout<<endl;

    for(int i=n-1;i>=0;i--)
    {
        int tmp=4*n+1-i*4;
        if(i==0)
        {
            cout<<"..";
            for(int j=0;j<tmp;j++)
                if(j==0||j==tmp-1)cout<<"$";
                else cout<<".";
            cout<<".."<<endl;
            cout<<"..";
            for(int j=0;j<tmp;j++)
                cout<<"$";
            cout<<".."<<endl;
        }
        else
        {
            for(int j=0;j<=i-1;j++)
                cout<<"$.";
            cout<<"..";
            for(int j=0;j<tmp;j++)
                if(j==0||j==tmp-1)cout<<"$";
                else cout<<".";
            cout<<"..";
            for(int j=0;j<=i-1;j++)
                cout<<".$";
            cout<<endl;

            for(int j=0;j<=i-2;j++)
                cout<<"$.";
            cout<<"$$$.";
            for(int j=0;j<tmp;j++)
                cout<<"$";
            cout<<".$$$";
            for(int j=0;j<=i-2;j++)
                cout<<".$";
            cout<<endl;
        }
    }
    return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章