编写函数删除C语言,c语言删除语句

c语言编写如下函数,将字符串s中的数字字符全部删除挑代码错误

#includestdio.h

创新互联企业建站,十年网站建设经验,专注于网站建设技术,精于网页设计,有多年建站和网站代运营经验,设计师为客户打造网络企业风格,提供周到的建站售前咨询和贴心的售后服务。对于成都做网站、网站制作中不同领域进行深入了解和探索,创新互联在网站建设中充分了解客户行业的需求,以灵动的思维在网页中充分展现,通过对客户行业精准市场调研,为客户提供的解决方案。

#includestdlib.h

#includestring.h

void del_digits(char str[])

{

int i = 0,j = 0;

while(str[i])

{

if(!(str[i] = '0' str[i] = '9'))

{

str[j++]=str[i];

}

i++;

}

str[j]='\0';

}

int main(int argc, char const *argv[])

{

char s[] = "abc1234567ffdf0z";

printf("字符串:%s\n",s);

del_digits(s);

printf("删除数字字符后的字符串是%s\n",s);

system("pause");

return 0;

}

C语言编写一个插入删除函数

一般呢,插入和删除函数是分开写的,还有分成两种存储结构,1.顺序表,2.链表,我给你一个我上数据结构时候写的链表的操作,里面全都有,如果不会用,追问我

#includestdio.h

#includemalloc.h

#includeWindows.h

#includeconio.h

#includestdlib.h

typedef struct

{

int data;

struct LNode *next;

}LNode;

LNode *Listinit(LNode *L)//初始化链表返还头指针

{

L = (LNode *)malloc(sizeof(LNode));

if (!L)return 0;

L-next = NULL;

return L;

}

int GetElem_L(LNode *L, int i, int *e)//取第i个元素

{

int j;

LNode *p;

p=L-next;j=1;

while(pji)

{

p=p-next;++j;

}

if(!p||ji) return 0;//i超过表长

*e=p-data;

return 1;

}

int ListInsert_L(LNode *L, int i, int e)//插入数据元素

{

LNode *p1 = L,*p2=L;

int j = 0;

if (i-1 LinkLength(L))

return 2;

while(p1!=NULL ji-1)

{

p1 = p1-next;

j++;

}

p2 = (LNode *)malloc(sizeof(LNode));

if (!p2)

return 0;

p2-data = e;

p2-next = p1-next;

p1-next = p2;

return 1;

}

void ClearList(LNode *L)//重置为空表

{

LNode *p;

while(L-next)

{

p=L-next;

L-next=p-next;

free(p);

}

}

void print_link(LNode *L)//输出函数

{

LNode *p = L;

p = p-next;

while (p != NULL)

{

printf("%5d", p-data);

p = p-next;

}

}

int ListDlete_L(LNode *L, int i, int *e)//删除L中I,并用e返回

{

int j = 0;

LNode *p1 = NULL, *p2 = NULL;

p1 = L;

while (p1-next != NULL j i - 1)

{

p1 = p1-next;

j++;

}

if (p1-next == NULL || j i - 1)

return 0;

p2 = p1-next;

p1-next = p2-next;

free(p2);

return 1;

}

int LinkLength(LNode *L)//链表的长度

{

int i = 0;

LNode *p = L-next;

while (p != NULL)

{

i++;

p = p-next;

}

return i;

}

请用C语言编写一个函数,用来删除字符串中的所有空格,加上注释哟

很简单的程序,遍历输入字符串。

1、如果字符不是空格,就赋值到输出字符串中。

2、如果是空格,就跳过这个字符。

例如:

#include stdio.h

#include string.h

int main()

{

const char * input = "Hello World! Welcome To Beijing!";

char output[1024];

int i, j, input_len;

input_len = strlen(input);

j = 0;

for(i = 0; i input_len; i++)

{

if (input[i] != ' ')

{

output[j] = input[i];

j++;

}

}

output[j] = '\0';

printf("Input string is: %s\n", input);

printf("After spaces were removed: %s\n", output);

return 0;

}

具体的输出效果为:

Input string is: Hello World! Welcome To Beijing!

After spaces were removed: HelloWorld!WelcomeToBeijing!

用C语言中的指针编写一个删除字符串中重复字符的函数

#includestdio.h

void fun(char *str) { char *p; int f[256],i;

for ( i=0;i256;i++ ) f[i]=0;

p=str;

while ( *p ) {

if ( f[*p]==0 ) { *str=*p; str++; }

f[*p]++;

p++;

}

*str=0;

}

void main() { char str[256];

gets(str); fun(str); printf("%s\n",str);

}

求大神,关于c语言删除函数

1. 函数开始的时候这两句话没有意义

p=(stud *)malloc(sizeof(stud));

q=(stud *)malloc(sizeof(stud));

你只是用了这两个指针,为它们分配空间一是没必要,二是内存会泄露

2. 看你的代码应该是有头结点的链表,搜索的时候p=head;p初始化为了head,指向了头结点,搜索的时候应该从p-next开始,而你用的while((p!=NULL)(strcmp(p-name,N)!=0)),应该用p-next!=NULL。而且后面删除的时候也删除的是p-next,所以比较的话也应该用p-next:strcmp(p-next-name,N)

C语言的删除函数

楼主的意思是在str1中删除str2中出现的字符?那么改成:

#includestdio.h

void main ()

{

char str1[9]={'t','i','n','m','f','g','y','f','s'};

char str2[3]={'A','s','g'};

int i,k,l;

for(i=0;i9;i++)

{

l=0;

for(k=0;k3;k++)

{

if (str1[i]=str2[k])

{l=1;break;}

}

if l!=1

printf("%c",str1[i]);

}

}


网站名称:编写函数删除C语言,c语言删除语句
浏览路径:http://azwzsj.com/article/heihoj.html