C语言实现古风排版:将文字从右向左竖向排列
C语言实现古风排版:将文字从右向左竖向排列
思路:
- **输入数据:**分别输入列数n和字符串s,建立一个二维字符数组存储按照古风排版后的字符串。
- **对输入的字符串s进行处理:**将字符串中的每个字符按照古风排版放置到新的二维字符数组中。
- **输出结果:**按照古风排版输出二维字符数组。
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
原文地址: https://www.cveoy.top/t/topic/oPKP 著作权归作者所有。请勿转载和采集!