c语言字符串处理-----压缩字符串

来源:互联网 发布:cisco 端口安全 编辑:程序博客网 时间:2024/04/28 11:29

马上要毕业了,最近一段时间一直看一些c语言基础的东东。打算从今天开始把最近的一些所得写出来和大家分享。今天先写一段关于字符串压缩的程序。

简单来说就是,把一段如"aaaaabcccddde“,写成“a5b1c3d3e1”的字符串。代码如下

void yasu(char *s){ char *p; char reschar[100];//存放压缩后的字符串 memset(reschar,NULL,sizeof(reschar)); //字符串赋值为空 p=s; int count=1; int k=0; int len=strlen(s); for (int i=0;i<=len-1;i++) {  if(p[i+1]==p[i])  {   count++;  }  else  {   //sprintf(reschar+strlen(reschar),"%c%d",p[i],count);   if ((count>=10)&&(count<100))   {    int d1=count%10;    int d2=(count/10)%10;    reschar[k++]=d2+'0';    reschar[k++]=d1+'0';   }   else   {       reschar[k++]=count+'0';   }  // itoa(count,reschar[k++],10);   count=1;  } } printf("%s\n",reschar);}


 

如有问题,请提问

 

原创粉丝点击