您的位置:首页 > 其它

字符串 格式对齐

2016-07-11 17:17 337 查看
//按要求分解字符串.

//输入两个数M,N;M代表输入的M串字符串,N代表输出的每串字符串的位数,不够补0。
//例如:输入2,8, “abc” ,“123456789”,则输出为“abc00000”,“12345678“,”90000000”

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

void main()
{
int M,N;
scanf("%d %d",&M,&N);

char s[100];
gets(s);

char ** str;
str=(char **) malloc(sizeof(char *)*100);

//将输入的字符串存下来
int i;
for(i=0;i<M;i++)
{
char *s=(char *)malloc(sizeof(char)*100);
scanf("%s",s);
str[i]=s;
}

//调整每个字符串的长度格式并输出
int len,j,k;
for(i=0;i<M;i++)
{
len=strlen(str[i]);

if(len==8)
printf("%s\n",str[i]);

else if(len<8)
{
printf("%s",str[i]);
for(j=len;j<8;j++)
printf("0");
printf("\n");
}

else
{
int t1=strlen(str[i])/8;
int t2=strlen(str[i])%8;

for(j=0;j<t1;j++)
{
for(k=j*8;k<j*8+8;k++)
{
printf("%c",str[i][k]);
}
printf("\n");
}

for(;k<strlen(str[i]);k++)
{
printf("%c",str[i][k]);
}
for(j=0;j<8-t2;j++)
printf("0");
printf("\n");
}

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: