Home >Computer Tutorials >Computer Knowledge >Write a program to remove specified characters from a string
Deleting specific characters from the character array can be achieved by the following method: use a for loop to traverse the character array, determine whether each character is the specified character to be deleted, and if not, output the character. This will remove the specified character from the character array.
#include
int main()
{
char str[100],c;
int j,k;
printf("please input a string:");
gets(str);
printf("\nEnter a character:");
c=getchar();
for(j=k=0;str[j]!='\0';j )
if(str[j]!=c)
str[k ]=str[j];
str[k]='\0';
printf("\n%s",str);
}
please input a string:wqeqwe <p>Enter a character:w</p> <p>qeqePress any key to continue</p> <p>c language</p> <p>C language is a general computer programming language with a wide range of applications. The design goal of the C language is to provide a programming language that can be easily compiled, handle low-level memory, generate a small amount of machine code, and can run without any runtime environment support. </p> <p>Although C language provides many low-level processing functions, it still maintains good cross-platform characteristics. C language programs written in a standard specification can be compiled on many computer platforms, even including some embedded processors. (Single-chip microcomputer or MCU) and supercomputers and other operating platforms. </p> <h2>Delete a character in a string </h2><p>rv2001, you changed my first question, but you haven’t changed the second question yet:)</p> <p>2. There is i in while. When b[i]==c comparison is performed, i has been moved to the back. If abcde is entered like this, the result will definitely be wrong when a is deleted. </p> <p>I have tested the following:</p> <p>#include <iostream.h></iostream.h></p> <p>void main()</p> <p>{</p> <p>char c;</p> <p>char b[100]; //String </p> <p>char m[100];//Save the string after deleting characters</p> <p>cin>>b; //Input string </p> <p>cin>>c; //Enter the string to be deleted </p> <p>int i=0;</p> <p>int j=0;</p> <p>while(b[i]!='\0'){</p> <p>if(b[i]!=c)m[j ]=b[i];</p> <p>i ;</p> <p>}</p> <p>m[j]='\0';</p> <p>cout </p><p>}</p> <p> In addition, the poster did not explain the meaning of the question. Should he delete only one character or delete all characters? </p> <h2>Methods to remove characters from a string </h2><p>#include <stdio.h></stdio.h></p> <p>#include <conio.h></conio.h></p> <p>void main()</p> <p>{</p> <p>char s[80],ch;</p> <p>int i,j=0;</p> <p>printf("Please input a string:");/*Enter a string*/</p> <p>gets(s);</p> <p>printf("please input a character:"); /*Enter the character you want to delete*/</p> <p>ch=getchar();</p> <p>for(i=0;s[i]!='\0';i )</p> <p>if(s[i]!=ch)</p> <p>s[j ]=s[i];</p> <p>s[j]='\0';</p> <p>printf("%s\n",s);/*Output the string after deleting the specified characters*/</p> <p>getch();</p> <p>}</p> <p>This way you can delete any characters you want to delete. </p>
The above is the detailed content of Write a program to remove specified characters from a string. For more information, please follow other related articles on the PHP Chinese website!