标题:删除字符串 s1 中与 s2 对应的字符的程序, 如何改?
只看楼主
杰子021
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2014-4-8
结帖率:50%
 问题点数:0 回复次数:3 
删除字符串 s1 中与 s2 对应的字符的程序, 如何改?
#include <stdio.h>

/* 比较两个字符串,删除匹配的字符 */
void squeeze(char s1[], char s2[]);

int main()
{
    char s1[] ="asdfghjk";
    char s2[] ="as";
   
     squeeze(s1, s2);
    printf("%s\n", s1);
    return 0;
}

void squeeze(char s1[], char s2[])
{
    int i, j, k;
    k = 0;
    for(i=0;s1[i]!='\0';++i)
        for(j=0;s2[j]!='\0';++j)
            if(s1[i]!=s2[j])
            s1[k++]=s1[1];
    s1[k]='\0';
   
}
输出结果:ssssss

[ 本帖最后由 杰子021 于 2014-5-6 22:02 编辑 ]
搜索更多相关主题的帖子: 字符串 return ssssss include 
2014-05-06 21:59
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
首先得判断是否是子串

DO IT YOURSELF !
2014-05-07 05:12
ying8501
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:6
帖 子:1092
专家分:1446
注 册:2008-11-24
得分:0 
你想让结果是什么?是dfghjk吗?
2014-05-07 07:20
ditg
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:16
帖 子:852
专家分:1937
注 册:2014-4-10
得分:0 
#include <stdio.h>

/* 比较两个字符串,删除匹配的字符 */
void squeeze(char s1[], char s2[]);

int main()
{
    char s1[] ="asdfghjk";
    char s2[] ="as";
   
     squeeze(s1, s2);
    printf("%s\n", s1);
    return 0;
}

void squeeze(char s1[], char s2[])
{
    int i, j, k;
    k = 0;
    for(i=0;s1[i]!='\0';++i) {
        for(j=0;s2[j]!='\0' && s1[i]!=s2[j];++j)
              ;
        if (s2[j] == '\0')
                s1[k++]=s1[i];
    }
    s1[k]='\0';
   
}

是这个意思吗?
收到的鲜花
  • 杰子0212014-05-08 15:19 送鲜花  1朵   附言:我很赞同

梦想拥有一台龙芯3A-4000
2014-05-07 17:33



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-431114-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031819 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved