问题:删除一个字符串中指定的字符。
分析:
设置一个辅助数组
遍历整个字符串
{
当前字符是非删除字符,则放到辅助数组中
}
辅助数组添加串结束标记
把辅助数组中的内容写回到原始数组中
原始数组添加串结束标记
void delchar(char *s,char ch)
{
char tmp[81];
char *s2,*s3; //s2指向原始字符串,s3指向辅助数组
s2=s;s3=tmp;
//遍历字符串
for(;*s2!='\0';s2++)
if (*s2!=ch)
{*s3=*s2;s3++;}
*s3='\0';
//把辅助数组中的内容写回到原始数组中
s3=tmp;
for(;*s3!='\0';s3++)
{*s=*s3;s++;}
*s='\0'; //'\0' 等价 0
}
[1]
[2]
[3]
[4]
[5]
下一页