C语言:如何将字符串数组赋值给一个字符串指针或数组?

输入一个字符串,再输入一个字符,把字符串中和这个字符都相同的字符删去,输出新的字符。以下是我编的:voiddelchar(char*s,charc){inti,j=0;c... 输入一个字符串,再输入一个字符,把字符串中和这个字符都相同的字符删去,输出新的字符。以下是我编的:
void delchar(char *s,char c)
{
int i,j=0;
char sb[100];
for(i=0;*(s+i)!='\0';i++){
if(c==s[i])
continue;
sb[j++]=s[i];
}
for(i=0;i<j;i++)
s[i]=sb[i];
s[i]='\0';
}
#include<stdio.h>
#include<string.h>
main()
{
char s1[100];
char c1,ch;
void delchar(char *s,char c);
clrscr();
printf("please input a string:\n");
scanf("%s",s1);
ch=getchar();
printf("please input a zifu:\n");
scanf("%c",&c1);
delchar(s1,c1);
printf("%s",s1);
}
在bxy(我的姓名缩写)函数里,我原本是想把sb[]赋值给*s或s[],但是我不知道怎么赋值,所以采用了这种很笨的方法。谁能告诉我怎么直接把sb[]赋值给s?
哦,对了,没有bxy函数,那是另外一题上面的,我记错了。这一提示delchar函数
展开
 我来答
clitoriscn
2010-09-20 · TA获得超过3628个赞
知道小有建树答主
回答量:3258
采纳率:0%
帮助的人:1527万
展开全部
直接在一个字符串里面按位赋值就可以了。像二楼说的一样。

因为你原字符串肯定是大于等于新字符串的,所以定一个变量检查原字符串的位置,定另一个变量检查新字符串的位置。那么第一个变量肯定是大于等于第二个变量的。这样可以把值从第一个变量的地方赋值到第二个变量的位置即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
azhi61ming
2010-09-20 · TA获得超过250个赞
知道小有建树答主
回答量:290
采纳率:0%
帮助的人:197万
展开全部
void delchar(char *s,char c)
{
int i,j=0;
for(i=0;*(s+i)!='\0';i++)
{
if(c==s[i])
continue;
s[j++]=s[i];
}
s[j]='\0';
}

你的意思是不是这样??
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友2bd54f54a
2010-09-20 · 超过14用户采纳过TA的回答
知道答主
回答量:116
采纳率:0%
帮助的人:55.8万
展开全部
void delchar(char *s,char c)
{
int i,j=0;
for(i=0;s[i];i++)
{
if(c==s[i])continue;
s[j++]=s[i];
}
s[j++]=0;
}
#include<stdio.h>
#include<string.h>
main()
{
char s1[100];
char c1,ch;
void delchar(char *s,char c);
printf("please input a string:\n");
scanf("%s",s1);
ch=getchar();
printf("please input a zifu:\n");
scanf("%c",&c1);
delchar(s1,c1);
printf("%s",s1);
}
你看这样如何?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
叶小怜
2010-09-20 · TA获得超过408个赞
知道小有建树答主
回答量:379
采纳率:0%
帮助的人:262万
展开全部
哪有bxy函数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式