拼多多0805笔试题-正方形字符

题意

给出一个4k的字符串,要求把给出的字符串,排列成正方形顺时针输出!(凭记忆回述不一定正确哈,欢迎指正!)
解题:这道题倒是很简单,共4k个字符串,那么每个行k个字符,顺序排列输出即可!
代码如下:

#include<iostream>
#include<string.h>
using namespace std;
int map[11][11];
char str[50];
int main()
{
    cin>>str;
    int len=strlen(str),j=0;
    int k=len/4;
    memset(map,0,sizeof(map));
    for(int i=0;i<k;i++)
        map[0][i]=str[j++];
    for(int i=0;i<k;i++)
        map[i][k]=str[j++];
    for(int i=k;i>0;i--)
        map[k][i]=str[j++];
    for(int i=k;i>0;i--)
        map[i][0]=str[j++];
    for(int i=0;i<=k;i++)
    {
        for(int j=0;j<=k;j++)
        {
            if(map[i][j])
                cout<<(char)map[i][j];
            else
                cout<<" ";
        }
        cout<<endl;
    }   
} 
/*
abcdefghijklmnop
*/

猜你喜欢

转载自blog.csdn.net/qq_33546256/article/details/81461631