描述
•连续输入字符串,请按长度为8拆分每个输入字符串并进行输出;
•长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。
输入描述:
连续输入字符串(输入多次,每个字符串长度小于等于100)
输出描述:
依次输出所有分割后的长度为8的新字符串
示例1
输入:
abc
123456789
复制
输出:
abc00000
12345678
90000000
#include <stdio.h>
#include <string.h>
int main(int argc, char** argv)
{
char str[100] = {0};
int i=0, j=0;
int tmp = 0;
while(scanf("%s", str) != EOF)
{
if(strlen(str) < 1)
{
;
}
else if(strlen(str) < 8)
{
printf("%s", str);
for(i=0; i<8-strlen(str); i++)
{
printf("0");
}
printf("\n");
}
else if(strlen(str) == 8)
{
printf("%s\n", str);
}
else
{
if(strlen(str) % 8)
{
tmp = 8 - strlen(str) % 8;
for(i=0; i<strlen(str)/8; i++)
{
for(j=0; j<8; j++)
{
printf("%c", str[8*i+j]);
}
printf("\n", str[8*i+j]);
}
for(i=0; i<strlen(str)%8; i++)
{
printf("%c", str[strlen(str)/8*8+i]);
}
for(i=0; i<tmp; i++)
{
printf("0");
}
printf("\n");
}
else
{
for(i=0; i<strlen(str)/8; i++)
{
for(j=0; j<8; j++)
{
printf("%c", str[8*i+j]);
}
printf("\n", str[8*i+j]);
}
}
}
}
}
该程序实现读取连续输入的字符串,将每个字符串按长度8进行拆分,不足8位的在末尾填充0。例如,输入'abc'会输出'abc00000',输入'123456789'会输出'12345678'和'90000000'。程序涉及字符串长度判断和循环输出。
611

被折叠的 条评论
为什么被折叠?



