永发信息网

c语言编程题

答案:3  悬赏:20  手机版
解决时间 2021-04-13 13:58
  • 提问者网友:人生佛魔见
  • 2021-04-12 23:57
c语言编程题
最佳答案
  • 五星知识达人网友:玩家
  • 2021-04-13 01:05

#include
#include
void myf_delsubstr(char *s,char *s1)
{char *p;
 int n;
 if((p=strstr(s,s1))==NULL)return;
 n=strlen(s1);
 for(;*p=*(p+n);p++);
}
int main()
{int x,i,y;
 char s[]="他是我的大学老师",s1[]="我的"; 
 myf_delsubstr(s,s1);
 printf("%s
",s);
 return 0;
}
全部回答
  • 1楼网友:神鬼未生
  • 2021-04-13 02:49
这代码能写 不算难
  • 2楼网友:走死在岁月里
  • 2021-04-13 01:28
#include 

char *myf_delsubstr(char *str_all, char *str_drop)

 char *all = str_all;   //临时指针 指向全字串
 char *drop = str_drop; //临时指针 指向待删除字串
 char *tmp = NULL;      //临时指针 后面处理字串时使用
 static char out[1024] = {0}; //静态字串 作为返回值
 char *u = out;         //临时指针 指向返回的字串
 int drop_len = 0;      //待删除字串的长度
 
 //获取待删除字串的长度
 while ('' != *drop)
 {
  drop++;
  drop_len++;
 }
 
 //在获取长度时drop这个指针的指向已被改变 重新赋值
 drop = str_drop;
 
 
 while ('' != *all)//直到全字串结尾
 {
  if (*all == *drop)//发现第一个和待删除字串的第一个字符相等 准备进入二层循环排除或证明怀疑
  {
   tmp = all;//临时指针指向当前匹配的字串的首部
   while ('' != *drop)//直到待删除字段结尾
   {
    tmp++;//每次循环临时全字串和drop字串要往后偏移一位
    drop++;//每次循环临时全字串和drop字串要往后偏移一位
    if (*tmp != *drop)//一旦发现其中一个字符不相等 排除怀疑
    {
     break;
    }
   }
   if ('' != *drop)//如果还未检查到字串尾就出来了肯定是排除了怀疑
   {
    *u = *all;//既然排除怀疑那就把当前字符赋值到带返回的字串out中
    u++;//赋值后要往后偏移
    drop = str_drop;
   }
   else//证实了怀疑
   {
    all += drop_len;//全字串越过待删除的字段长度
    drop = str_drop;//指针的指向已被改变 重新赋值
    continue;//全字串中可能不止出现一次待删除的字串 继续全字串的检查
   }
  }
  else
  {
   *u = *all;//既然不是待删除字符那就把当前字符赋值到带返回的字串out中
   u++;//赋值后要往后偏移
  }
  
  all++;//既然是循环整个全字串检查 检查完一个字符后指针要往后偏移一位
 }
 
 return out;//u只是指向out这个字串的临时指针 我们返回的还是out本体
}
int main(int argc, char *argv[])
{
 char aa[1024] = {0};
 char bb[512] = {0};
 
 printf("输入一个字串: ");
 scanf("%s", aa);
 
 printf("输入需要删除的字串: ");
 scanf("%s", bb);
 
 char *kk = myf_delsubstr(aa, bb);
 printf("处理后的字串: %s ", kk);
    return 0;
}

输入一个字串:
我觉得你是不可能爱上我的因为我是一个男孩子
输入需要删除的字串:

处理后的字串:
觉得你是不可能爱上的因为是一个男孩子
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯