C语言,编写函数squeeze(s1,s2),将字符串s1中任何与字符串s2中匹配的字符都删除.编译通过了,没有打印结果?

#include<stdio.h>#include<stdlib.h>voidsqueeze(chars1[],chars2[]){inti,j,k;for(i=k=0;... #include <stdio.h>
#include <stdlib.h>

void squeeze(char s1[],char s2[])
{
int i,j,k;
for (i=k=0;s1[i]!='\0';i++)
{
for(j=0;s2[j]!='\0'&&s2[j]!=s1[i];j++)
;
if (s2[j]=='\0')
s1[k++]=s1[i];
}
s1[k]='\0';
printf("s1中去除与s2相同的符号后剩下的是%s\n",s1);
}
main()
{
char s1,s2;
s1="hello world!";
s2="how are you?";
void squeeze(char s1[],char s2[]);
}
展开
 我来答
百度网友a585946
2014-01-21 · TA获得超过401个赞
知道答主
回答量:77
采纳率:100%
帮助的人:75.6万
展开全部
#include <stdio.h>
#include <stdlib.h>

void squeeze(char s1[],char s2[])
{
int i,j,k;
for (i=k=0;s1[i]!='\0';i++)
{
for(j=0;s2[j]!='\0'&&s2[j]!=s1[i];j++)
;
if (s2[j]=='\0')
s1[k++]=s1[i];
}
s1[k]='\0';
printf("s1中去除与s2相同的符号后剩下的是%s\n",s1);
}
main()
{

char s1[20]="hello world!";
char s2[20]="how are you?";
squeeze(s1,s2);
}
这样就对了,字符串数组的初始化错了。
屁强了不起
2014-01-21 · 超过41用户采纳过TA的回答
知道小有建树答主
回答量:126
采纳率:0%
帮助的人:95.1万
展开全部
重写吧,太多概念错了。
main 函数里:
s1 和 s2 都是 char 也就是字符,不能赋值成 s1[] 或 s2[]。
squeeze 里面就错更多了。

建议仔细看看书再写
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
笑傲江湖lit
2014-01-21 · 超过12用户采纳过TA的回答
知道答主
回答量:100
采纳率:0%
帮助的人:39.9万
展开全部
错误太多了,你需要看一些基础的C语言知识
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式