C语言实现古风排版:将文字从右向左竖向排列

思路:

  1. **输入数据:**分别输入列数n和字符串s,建立一个二维字符数组存储按照古风排版后的字符串。
  2. **对输入的字符串s进行处理:**将字符串中的每个字符按照古风排版放置到新的二维字符数组中。
  3. **输出结果:**按照古风排版输出二维字符数组。

C代码:

#include <stdio.h>
#include <string.h>

int main() {
    int n, i, j, len;
    char s[1001], arr[100][100];

    scanf("%d", &n);
    scanf("%s", s);

    len = strlen(s);

    // 初始化二维数组
    for (i = 0; i < 100; i++) {
        for (j = 0; j < 100; j++) {
            arr[i][j] = ' ';
        }
    }

    // 将字符放置到二维数组中
    j = 0;
    for (i = 0; i < len; i++) {
        arr[j][n - 1 - (i % n)] = s[i];
        if ((i + 1) % n == 0) {
            j++;
        }
    }

    // 输出结果
    for (i = 0; i <= len / n; i++) {
        for (j = 0; j < n; j++) {
            if (arr[i][j] != ' ') {
                printf("%c", arr[i][j]);
            }
        }
        printf("\n");
    }

    return 0;
}

输入样例:

4
This is a test case

输出样例:

asa T
st ih
e tsi
 ce s
C语言实现古风排版:将文字从右向左竖向排列

原文地址: https://www.cveoy.top/t/topic/oPKP 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录