题解 | #字符串分隔#
字符串分隔
http://www.nowcoder.com/practice/d9162298cb5a437aad722fccccaae8a7
#include <stdio.h> #include <string.h>
int main() { char str[100] = {0}; gets(str); int len = strlen(str); int num = len / 8; //取整,实际循环次数为num+1 if((len % 8) == 0) //若是8的倍数,后续判断就会多一次循环 { num--; }
for(int i = num+1; i > 0; i--)
{
char put[9]; //输出数据
memset(put, '0', 9);
if(i == 1) //不足8位
{
for(int j = 0; j < 8; j++)
{
if(str[num*8+j] == '\0') //判断是否不足8的倍数
{
break;
}
put[j] = str[num*8+j];
}
}
else //刚好8位
{
for(int j = 0; j < 8; j++)
{
put[j] = str[(num+1-i)*8+j];
}
}
put[8] = '\0'; //字符串结尾输出'\0';否则可能会有错误
printf("%s\n", put);
}
return 0;
}