问题链接:UVA490 Rotating Sentences。
题意简述:输入若干行字符串,将其旋转90度后输出。
问题分析:需要一个二维数组存储输入的字符串,好在规模不大。
程序说明:封装了函数mygets()(函数gets()在新标准中,被建议不要使用,作用就自己做一个),其他都是套路。
AC的C语言程序如下:
/* UVA490 Rotating Sentences */
#include <stdio.h>
#include <memory.h>
#define MAXN 100
char s[MAXN+1][MAXN+1];
int mygets(char s[])
{
    int i = 0;
    char c;
    while((c = getchar()) && c != '\n' && c != EOF)
        s[i++] = c;
    s[i] = '\0';
    return i;
}
int main(void)
{
    int linecount, maxlen, i, j;
    memset(s, 0, sizeof(s));
    linecount = 0;
    maxlen = 0;
    while(mygets(s[linecount])) {
        i = strlen(s[linecount]);
        if(i > maxlen)
            maxlen = i;
        linecount++;
    }
    for(i=0; i<maxlen; i++) {
        for(j=linecount-1; j>=0; j--)
            putchar((s[j][i] == 0) ? ' ' : s[j][i]);
        putchar('\n');
    }
    return 0;
}原文:http://blog.csdn.net/tigerisland45/article/details/52228416