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

中国古代文字从右向左竖向排版。本程序使用C语言实现该排版方式,将输入的文字按每列指定字符数从右向左竖向排列。

输入格式:

  • 第一行输入一个正整数N(<100),表示每一列的字符数。
  • 第二行输入一个长度不超过1000的非空字符串,以回车结束。

输出格式:

  • 按古风格式排版给定的字符串,每列N个字符(除了最后一列可能不足N个)。

输入样例:

4
This is a test case

输出样例:

asa T
st ih
e tsi
 ce s

思路:

从末尾开始取n个字符,然后倒序输出即可。注意末尾不足n个字符时,输出空格补齐。

C语言代码:

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

int main() {
    int N, i, j, len;
    char str[1001];

    scanf("%d", &N);
    scanf("%s", str);

    len = strlen(str);
    for (i = 0; i < len; i += N) {
        for (j = i + N - 1; j >= i && j >= 0; j--) {
            if (j < len) {
                printf("%c", str[j]);
            } else {
                printf(" ");
            }
        }
        printf("\n");
    }

    return 0;
}
C语言代码实现古风文字排版:从右向左竖向排版

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

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