session存在哪里:假设有这样一个字符串:AAAABAAXAAABCDAEAAAA,想把它转换成:BAXABCDAE,

来源:百度文库 编辑:神马品牌网 时间:2024/04/27 21:26:54
即把开头和结尾的A都去掉,中间有重复的A只保留一个,用C语言实现,哪位大虾给指点一下吧!谢谢了~~~~
谢谢你的答案!
我想编一个子函数,在主函数中调用它,字符串的赋值也在主函数中

一个比较低效的程序

#include <stdio.h>
#include <string.h>

int main()
{
char str[] = "AAAABAAXAAABCDAEAAAA";
char rst[256];
int i = 0;
int k = 0;
int loc = 0; // 0 means start
char preCh = '+';
int start,end;
int len = strlen(str);

for(i=0;i<len;i++) if(str[i]!='A') break;
if(i!=len) start = i;
for(i=len-1;i>=0;i--) if(str[i]!='A') break;
if(i!=-1) end = i;

for(i=start;i<=end;i++)
{
if((str[i]!='A') || (preCh != 'A'))
{
rst[k++] = str[i];
preCh = str[i];
}
}

rst[k] = '\0';

printf("%s\n",str);
printf("%s\n",rst);

return 0;
}