0
点赞
收藏
分享

微信扫一扫

C语言:L1-039 古风排版 (20 分)

文章目录

一、题目

输入格式:

输出格式:

输入样例:

输出样例:

二、方法1

1、思路

易错点提示:

  1. 用 getchar(); gets(str); 来输出字符串;
  2. 需要先计算共有多少列和行,输入的 N 即为行数,而字符串的长度 len/N即为列数(注意判断是否除尽,若未除尽向上加1);
  3. 注意遍历的顺序:列->从右向左,行->从上到下

2、代码

#include<stdio.h>
#include<string.h>
int main()
{
	int N, len, n, t, i, j;
	char str[1005], a[100][100];
    scanf("%d", &N);
    getchar();
    gets(str);
    len = strlen(str);
	n = len / N;
	if (len % N != 0)
		n++;
	for (j = n - 1; j >= 0; j--)
	{
		for (i = 0; i < N; i++)
		{
			if (str[t] != '\0')
			{
				a[i][j] = str[t];
				t++;
			}
			else
			{
				a[i][j] = ' ';
			}
		}
	}
	for (i = 0; i < N; i++)
	{
		for (j = 0; j < n; j++)
		{
			printf("%c", a[i][j]);
		}
		printf("\n");
	}
    return 0;
}
举报

相关推荐

0 条评论