解题思路:
计算连续的6的个数,对于不是6的字符直接输出即可,在计算连续
的6的个数时,最好定义一个标志,便于判断是否连续,如果连续的
6的个数小于3个,则输出count个6,超过三个小于不超过9个,则
输出9,若超过9个,则输出27
#include <stdio.h>
int main()
{
char ch[1001];
int count=0,flag= 0;
gets(ch);
for(int i=0;ch[i]!='\0';i++)
{
if(ch[i]-'0'==6)
{
count++;
flag = 1;
}
if(ch[i]-'0'!=6 && flag==1)
{
if(count<=3)
{
for(int j=0;j<count;j++)
printf("6");
}
else if(count>3 && count<=9)
printf("9");
else if(count>9)
printf("27");
count = 0;
flag = 0;
}
if(ch[i]-'0'!=6 && flag==0)
printf("%c",ch[i]);
}
if(count<=3)
{
for(int j=0;j<count;j++)
printf("6");
}
else if(count>3 && count<=9)
printf("9");
else if(count>9)
printf("27");
printf("\n");
return 0;
}