UVA - 490 - Rotating Sentences

来源:互联网 发布:邮箱 域名反查 编辑:程序博客网 时间:2024/06/11 13:36

http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=94&page=show_problem&problem=431


题意:把输入的多个字符串,顺时针旋转后输出。就像中国古文里竖着写字一样,要从右读到左。

解题:考虑到要好多空格,直接先格式化字符串数组为空格,输入字符串的时候只复制内容进去,再换个角度输出字符串数据。


#include <iostream>#include <stdio.h>#include <string.h>using namespace std;const int MAXN = 100;const int MAXLENGTH = 100;int main(){char szStr[MAXN+1][MAXLENGTH+1];char str[MAXLENGTH+1];int nCount;int max=0;nCount = 0;memset(szStr, ' ', (MAXN+1)*(MAXLENGTH+1));while ( cin.getline(str, MAXLENGTH+1) ){int len = strlen(str);if ( len > max ){max = len;} // end iffor ( int i=0; i<len; i++ ){szStr[nCount][i] = str[i];} // end fornCount++;} // end whilefor ( int j=0; j<max; j++ ){for ( int i=nCount-1; i>=0; i-- ){cout <<szStr[i][j];} // end forcout <<endl;} // end forreturn 0;}


0 0
原创粉丝点击