描述
•输入一个字符串,请按长度为8拆分每个输入字符串并进行输出;
•长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。
输入描述:
连续输入字符串(每个字符串长度小于等于100)
输出描述:
依次输出所有分割后的长度为8的新字符串
示例1
输入:abc
输出:abc00000
题比较简单,分三种情况,
1.长度小于等于8;
2.长度大于8 长度%8非零;
3.长度大于8 长度%8为零。
代码如下:不知为何有一组例子死活过不去,求大家指点。
#include <stdio.h>
#include <string.h>
int main()
{
int len,i;
int j=0,k=0,a=0,b=0;
char str[100];
scanf("%[^\n]\n",str);
len=strlen(str);
if(len<=8)
{
for(i=len;i<8;i++)
{
str[i]='0';
}
for(i=0;i<8;i++)
{
printf("%c",str[i]);
}
printf("\n");
}
else if((len>8)&&(len%8!=0))
{
j=len/8;
k=len%8;
for(i=k;i<8;i++)
{
str[j*8+i]='0';
}
for(a=1;a<=j+1;a++)
{
for(b=(a-1)*8;b<8*a;b++)
{
printf("%c",str[b]);
}
printf("\n");
}
}
else if((len>8)&&(len%8==0))
{
j=len/8;
for(a=1;a<=j+1;a++)
{
for(b=(a-1)*8;b<8*a;b++)
{
printf("%c",str[b]);
}
printf("\n");
}
}
return 0;
}