首页 热点资讯 义务教育 高等教育 出国留学 考研考公

C语言“在字符串中删除指定的字符”?怎么编写程序

发布网友 发布时间:2022-04-23 19:58

我来回答

4个回答

热心网友 时间:2022-04-17 23:07

从字符数组中删除特定的字符,即输入要删除的指定字符,利用for循环找到非指定字符,将非指定字符输出即可。以下为具体的实现方法:

#include<stdio.h> 

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); 

<pre name="code" class="cpp">please input a string:wqeqwe  

Enter a character:w 

qeqePress any key to continue

c语言

C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。

热心网友 时间:2022-04-18 00:25

这个容易,就是把指定位置的字符去掉,也就是说后面的字符覆盖
比如删除指定的字符在字符串中第一个出现的位置
void strdel( char* str, char ch )
{
char *p = str;
while( *p )
{
if( *p==ch )
break;
}
if( *p )
{
while( *p )
{
*p==*(p+1);
p++;
}
}
}

热心网友 时间:2022-04-18 02:00

如果删除一个字符,那就简单了。
#include<stdio.h>
void main()
{
int i=0,j,k;
char array[20];
printf("please input this array\n");
scanf("%s",array);
while(array[i++]);//求出字符数组中所含元素的个数
for(j=0;j<i-1;j++)
{
if(array[j]=='a')//假设制定字符为a的话
for(k=j;k<i-1;k++)
array[k]=array[k+1];
}
}
我没在电脑上调试。不对的话告诉我,到时我再改。这电脑上没VC。

热心网友 时间:2022-04-18 03:51

#include<stdio.h>
void main()
{ char a[100];
int i,j;
printf("Enter a string:");
gets(a);
for(i=j=0;a[i]!='\0';i++)
{ if(a[i]!='k')
a[j++]=a[i];}
a[j]='\0';
puts(a);
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com