把字符串解压缩如b4a3展开成bbbbaaa怎么不行啊???
#include<stdio.h>void main()
{int i=0,t;
char str[100];
scanf("%c",str);
while(str[i]!='\0')
{
if(str[i]<='9' && str[i]>='0')
{t=str[i]-'0';
for(i=0;i<t;i++)
printf("%c",str[i-1]);
i++;}
else
i++;
}
}
程序代码:以b4a3为例;
#include<stdio.h>
void main()
{
int i=0,t;
char str[100];
scanf("%c",str);
while(str[i]!='\0')
{
if(str[i]<='9' && str[i]>='0')
{
t=str[i]-'0'; //获取数字b=4,此时i=2;
for(i=0;i<t;i++) //这边又是i! for(0 to 4)
printf("%c",str[i-1]); // 输出 str[0]b str[1]4 这边就错了! 应该在for循环之前,确定获取数字之后,将str[i]给临时变量
i++;
}
else
i++;
}
}