写出来了
难啊
运行环境tc20
include<stdio.h>
main()
{int a[8]={1,1,2,3,5,4,4,7};
int b[30];
int c[30];
int length;
int i=0;
int j=0;
int k=1;
int m;
int n;
int p;
int q;
int t;
while(i<8)
{k=1;
while(a[i]==a[++i])
k++;
b[j++]=k;
b[j++]=a[i-1];
}
length=j;
printf("\n");
for(t=0;t<length;t++)
printf("%d",b[t]);
m=0; /*m is the flag of b,n is the flag of c*/
n=0;
while(m<length-1)
{if(b[m]!=1)
{c[n++]=b[m++];
c[n++]=b[m++];}
else
{
for(p=1,q=m;b[m+2]==1&&m<length-1;m=m+2)
p++;
m=m+2;
c[n++]=(-1)*p;
for(k=0;k<p;k++)
{c[n++]=b[q+1];
q=q+2;}
}
}
printf("\n");
for(t=0;t<n;t++)
printf("%d",c[t]);
}