PAT 天梯赛 L1-054 福到了(模拟)

本题要求倒着输出,输出时换成另一个字符,所以就在刚输入到数组(第一个数组)的时候下手,输入的是空格,那么新数组(第二个)就是空格,输入的是字符,那么新数组是另一个要求的字符,最后横纵坐标都倒过来就完成倒着输出了。

因为还要判断倒过来和原来的形式是否是一样的,这就需要又一个新数组(第三个),新数组的内容是第一个数组的逆序,然后比较第一个数组和第三个数组的每一行,如果都相同,则输出 bu yong dao le.
 

#include<iostream>
using namespace std;
int main()
{
    char c,d[110][110],e[110][110];
    int n,flag = 1,x = 0,y = 0;
    scanf("%c %d",&c,&n);
    getchar();
    for(int i = 0;i < n; i++)
    {
        for(int j = 0;j < n; j++)
        {
            scanf("%c",&d[i][j]);
            e[i][j] = d[i][j];
        }
        getchar();
    }
    for(int i = n - 1;i >= 0; i--)
    {
        for(int j = n - 1;j >= 0; j--)
        {
            if(e[y][x++] != d[i][j])
                flag = 0;
        }
        x = 0;
        y++;
    }
    if(flag)
        printf("bu yong dao le\n");
    for(int i = n - 1;i >= 0; i--)
    {
        for(int j = n - 1;j >= 0; j--)
        {
            if(d[i][j] == '@')
                printf("%c",c);
            else
                printf("%c",d[i][j]);
        }
        printf("\n");
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/xiao__hei__hei/article/details/87728459