这题昨天晚上写了半天,PE改了就WA,实在不知道哪里WA了,灰常郁闷。
今天早上继续,但还是过不了,无奈之下只好看了一下别人的代码,发现他的代码竟然用空格来占位,我试了一下竟然AC了- -,可是题目根本没说用空格占位啊,我在输出样例那里又复制又用鼠标划的,也没发现有空格在后面占位(而且那输入样例正好是第二个句子长度大于第一个句子长度的- -,就更没法看出有空格占位了),强烈鄙视啊!而且我改完代码要迎接AC的时候居然Uval又unavailable了- -。
顺便说才发现fgets()不完全覆盖字符串,以前都没注意到。
代码如下(相对于很多人的应该算简短的了):
#include <stdio.h>
#include <string.h>
#define N 110
int main(void)
{
char s[N][N];
int i, j, k, max;
for (i = max = 0, memset(s, ' ', sizeof(s)); fgets(s[i], N, stdin); i++)
if (strlen(s[i]) > max)
max = strlen(s[i]);
for (j = 0; j < max-1; j++) {
for (k = i-1; k >= 0; k--)
s[k][j] != '\n' && s[k][j] ? putchar(s[k][j]) : putchar(' ');
printf("\n");
}
return 0;
}