十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊
量身定制 + 運(yùn)營維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
話說B數(shù)組不應(yīng)該是整形呀,不然不能保存字母了。以下是我的代碼。。。

網(wǎng)站設(shè)計制作、網(wǎng)站建設(shè)服務(wù)團(tuán)隊是一支充滿著熱情的團(tuán)隊,執(zhí)著、敏銳、追求更好,是創(chuàng)新互聯(lián)的標(biāo)準(zhǔn)與要求,同時竭誠為客戶提供服務(wù)是我們的理念。成都創(chuàng)新互聯(lián)把每個網(wǎng)站當(dāng)做一個產(chǎn)品來開發(fā),精雕細(xì)琢,追求一名工匠心中的細(xì)致,我們更用心!
#include?iostream
#include?string.h
#include?stdio.h
using?namespace?std;
void?yasuo(char?a[],char?b[])
{
int?count=1,p=0;
for(int?i=0;?istrlen(a);?i++)
if(a[i]==a[i+1])
count++;
else?if(count2)
{
b[p++]=(char)(count+'0');
b[p++]=a[i];
count=1;
}
else?if(count==2)
{
b[p++]=a[i];
b[p++]=a[i];
count=1;
}
else
b[p++]=a[i];
}
void?printB(char?b[])
{
coutbendl;
}
void?backB(char?b[])
{
for(int?i=0;?istrlen(b);?i++)
if(b[i]='9'b[i]='3')
{
for(int?j=0;?j(int)(b[i]-'0');?j++)
coutb[i+1];
i++;
}
else
coutb[i];
coutendl;
}
int?main()
{
char?a[1000]=?{0},b[1000]=?{0};
gets(a);
yasuo(a,b);
printB(b);
backB(b);
}
#includestdio.h
int?compress(char?s[])
{?int?i,j,k,n,a[127]=?{0};
for(i=0;?s[i];?i++)a[s[i]]++;
n=i;
for(i=0;?s[i];?i++)
{if(a[s[i]]1)
for(k=i,j=i+1;?s[k];?j++)
if(s[i]!=s[j])s[++k]=s[j];
}
return?n-i;
}
int?main()
{?char?s[100];
int?i,count;
gets(s);
count=compress(s);
puts(s);
printf("刪除字符:%d個\n",count);
return?0;
}
#includestdio.h
#define MAX_NUM 32int main()
{ char *p,str[60];
int i,j=0;
static int num[26];
p=(char*)malloc(MAX_NUM*sizeof(char));
gets(str);
for(i=0;str[i];i++)
{ if(str[i]==' ') p[j++]=str[i];
else {
if(num[str[i]-97]==0||num[str[i]-97]==2||num[str[i]-97]==5)
{ p[j++]=str[i]; num[str[i]-97]++;}
else num[str[i]-97]++;
} }
for(i=0;ij;i++)
putchar(p[i]);
getch();
return 0;
}注:輸入的為小寫字母,而且句子長度不超過60個字符,保存字?jǐn)?shù)不超過32個。。。。。在win_tc中通過……
#include stdio.h
void stringZip(const char
*pInputStr, long lInputLen, char *pOutputStr)
{ int n=1;
char c,*p1=pInputStr,*p2=pOutputStr;
while(*p1)
{
c=*(p1++);
while(*p1==c){n++;p1++;}
if(n1)
{
if(n999){*(p2++)=48+n/1000; n/=10;}
if(n99){*(p2++)=48+n/100; n/=10;}
if(n9){*(p2++)=48+n/10; n/=10;}
*(p2++)=48+n;
}
*(p2++)=c;
n=1;
}
*p2='\0';
}
void main()
{ char s1[200],s2[200];
gets(s1);
stringZip(s1,strlen(s1),s2);
puts(s2);
}
/*
原串:?111225555
壓縮后:?312245
原串:?333AAAbbbb
壓縮后:?333A4b
原串:?ASXDCdddddd
壓縮后:?1A1S1X1D1C6d
Press?any?key?to?continue
*/
#include?stdio.h
#include?string.h
char?*CompressStr(char?s[])?{
char?t[255];
int?i?=?0,j,k?=?0;
while(s[i])?{
j?=?i?+?1;
while(s[i]?==?s[j])?++j;
t[k++]?=?j?-?i?+?'0';
t[k++]?=?s[i];
i?=?j;
}
t[k]?=?'\0';
strcpy(s,t);
return?s;
}
int?main(void)?{
char?i,s[][20]?=?{"111225555","333AAAbbbb","ASXDCdddddd"};
for(i?=?0;?i??3;?++i)?{
printf("原串:?%s\n",s[i]);
printf("壓縮后:?%s\n",CompressStr(s[i]));
}
return?0;
}