题解 | #字符串分隔|C语言|输入处理#
字符串分隔
http://www.nowcoder.com/practice/d9162298cb5a437aad722fccccaae8a7
关键思路
每一行分别处理
利用下面代码可以分离输入行
char input[100] = {0}; while(gets(input) != NULL) { }
进入到循环中就可以对每一句进行判断了,分大于8和小于8处理即可
全部代码如下:
#include <stdio.h> #include <stdlib.h> #include <string.h> int main() { char input[100] = {0}; int i = 0,j = 0; int len = 0; char ch; while(gets(input) != NULL) { len = strlen(input);//读取字符串长度分别处理 if(len > 8) { for(i = 0;i < len;i++) { if((i >= 8) && (i % 8) == 0) { printf("\n"); } printf("%c",input[i]); } if(i % 8 != 0)//退出循环时需要判断是否有单出来的 { for(i = (i % 8);i < 8;i++) { printf("%c",'0'); } } printf("\n"); } else { for(i = 0;i < 8;i++) { if(i < len) { printf("%c",input[i]); } else { printf("%c",'0'); } } printf("\n"); } } return 0; }