题解 | #字符串分隔|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;
}