#include // 删除字符串中的指定字符 void del(char *ps,char x) { inti,j; for(i=j=0;*(ps+i)!=0;i++) if (*(ps+i)!=x) {*(ps+j)=*(ps+i); j++; } *(ps+j)='\0'; } int main() { char s[20],x; printf(" 请输入一个字符串 :\n"); gets(s); printf(" 删除哪...
任意输入一个字符串,删除其中的字母输出。相关知识点: 试题来源: 解析 #include"stdio.h"main(){char ch[80];int i=0,j=0;gets(ch);while(ch[i]){if(!(ch[i]>='a'&&ch[i]<='z'||ch[i]>='A'&&ch[i]<='Z'))ch[j++]=ch[i];i++;}ch[j]='\0';puts(ch);} ...
【程序说明】从键盘上任意输入一个字符串和字符,要求从该字符串中删除所有的该字符。【程序代码】#include ___
接收用户输入的字符串:使用标准输入函数来获取用户输入的字符串,并确保字符串长度小于100。 接收用户想要去掉的特定字符:再次使用标准输入函数来获取用户想要去掉的字符。 遍历输入的字符串,查找并移除特定字符:通过遍历字符串,如果当前字符是需要移除的特定字符,则跳过它;否则,将其保留在新的字符串中。 输出处理后的字...
具体来说,初始化i和j为0,然后使用`while(s[j++]=s[i++])`遍历字符串。如果当前字符不等于目标字符k,则继续添加到新字符串中,否则跳过该字符。最终使用`puts(s)`输出处理后的字符串。这里需要注意的是,直接使用`gets(s)`读取字符串可能存在安全问题,因为`gets()`函数不能检查输入字符串...
include <stdio.h>int main(int argc,char *argv[]){ char s[101],i,j,k; gets(s); scanf(" %c",&k); j=i=0; while(s[j++]=s[i++]) if(s[j-1]==k) j--; puts(s); return 0;} ...
include<stdio.h> 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';} ...
不对,,正确如下: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的区别 ...
void del(char *ch,char c);main(){ char a[100],c;printf("input a string:\n");gets(a);printf("input a char:");scanf("%c",&c);del(a,c);puts(a);getch();} void del(char *s,char c){ int i=0,j=0;for(;s[i]!='\0';i++)if(s[i]!=c)s[j++]=s[i]...
gets函数:字符串输入函数,从键盘输入一个字符串(该字符串可以包含空格),一直到碰到回车符(\n)为止。 puts函数:字符串输出函数,一直碰到字符串结束标志'\0'。 核心:s[c++]用于挪位置,把删除后字符的字符串打印出来,这里c++是先使用后自增1(++c则是先自增后使用)。