由键盘任意输入一个字符串和一个字符,要求从该字符串中删除所指定的字符。
答案:2 悬赏:10
解决时间 2021-02-19 05:57
- 提问者网友:践踏俘获
- 2021-02-18 08:01
用循环依次判定字符数组s中的每个字符与x是否相等,若不相等则赋给另一个数组存放,若相等则不赋给另一个数组存放,处理完后另一个数组即为删除了 x字符的数组。也可练习直接在一个数组中处理
最佳答案
- 二级知识专家网友:茫然不知崩溃
- 2021-02-18 09:28
#include
void main()
{char str[]="abcdefghijklmn";
char x;
int i,j;
printf("\nInput the char x:");
scanf("%c",&x);
for(i=0,j=0;str[i]!='\0';i++)
if(x!=str[i])str[j++]=str[i];
str[j]='\0';
}
void main()
{char str[]="abcdefghijklmn";
char x;
int i,j;
printf("\nInput the char x:");
scanf("%c",&x);
for(i=0,j=0;str[i]!='\0';i++)
if(x!=str[i])str[j++]=str[i];
str[j]='\0';
}
全部回答
- 1楼网友:短发女王川岛琦
- 2021-02-18 11:07
不对,,
正确如下:
for(i=0;a[i]!='\0';i++)
{
if(a[i]==ch)
{
j=i;
while(a[i]!='\0')
{
a[j]=a[++i];
j=i;
}
}
}
a[i]='\0';
(以上代码可以覆盖你的for语句)
你那个第一j没有赋值,,第二不是从你要删除的字符开始向前移动的,,第三要注意j++与++j的区别
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯