编写一个函数delchar(char *s1,char s2),从字符串s1中删去与s2相同的字符。用main()测试该函数。用递归法
1个回答
展开全部
#include<iostream>
using namespace std;
char * delchar(char *s1, char s2) //函数定义
{
if (*s1 == '\0')
return s1;
if (*s1 == s2) {
strcpy(s1, s1 + 1);
delchar(s1, s2);
} else {
delchar(++s1, s2);
}
return s1;
}
int main()
{
char s1[] = "bsklambdabag";
char s2 = 'a';
cout<<"原来的字符串是:\n"<<s1<<endl;
delchar(s1, s2); //函数调用
cout<<"删除后指定字符后的字符串是:\n"<<s1<<endl;
return 0;
}
using namespace std;
char * delchar(char *s1, char s2) //函数定义
{
if (*s1 == '\0')
return s1;
if (*s1 == s2) {
strcpy(s1, s1 + 1);
delchar(s1, s2);
} else {
delchar(++s1, s2);
}
return s1;
}
int main()
{
char s1[] = "bsklambdabag";
char s2 = 'a';
cout<<"原来的字符串是:\n"<<s1<<endl;
delchar(s1, s2); //函数调用
cout<<"删除后指定字符后的字符串是:\n"<<s1<<endl;
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询