#include<stdio.h>
int main()
{
char ch[1000];
int n=0,i,j,k,w;
for(w=0;w<1000;w++)
{
scanf("%c",&ch[w]);
if(ch[w]=='\n') break;
}
ch[w]='\0';
for(i=0;i<w;i++)
{
if(ch[i]=='6')
{
for(j=i;j<1000;j++)
{
if(ch[j]!='6')
{
if(n>3&&n<=9) printf("9");
if(n>9) printf("27");
if(n<=3)
{
for(k=0;k<n;k++)
printf("6");
}
i=j;
if(j!=w) printf("%c",ch[j]);
break;
}
n++;
}
}
else printf("%c",ch[i]);
n=0;
}
return 0;
}
数组开大点试试,可能正好卡在1000个元素,然后ch[m]=‘\0’这里就越界了