C语言求助,要求删除字符串中特定字符

发布网友 发布时间:2022-04-22 20:27

我来回答

5个回答

热心网友 时间:2022-05-03 09:21

char *ccstr( char *str, char *tok)

{

    char *p;

    p = strtok( str, tok );

    while( p != NULL )

    {

if( p != str )

{

strcat( str, p );

}

p = strtok( NULL, tok );

    }

    return( str );

}

扩展资料:    

C语言在使用标识符时还必须注意以下几点:

1、标准C不*标识符的长度,但它受各种版本的C语言编译系统*,同时也受到具体机器的*。例如在MSC中规定标识符8位有效,TC规定标识符32位有效。(在MSC中,当两个标识符前8位相同时,则被认为是同一个标识符)。

2、在标识符中,字母的大小写是有区别的。例如BOOK和book是两个不同的标识符。

3、标识符虽然可由程序员随意定义,但标识符是用于标识某个量的符号。因此,命名应尽量有相应的意义,以便于阅读理解,做到“顾名思义”。

热心网友 时间:2022-05-03 10:39

C语言是一门面向过程的计算机编程语言,与C++、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C语言描述问题比汇编语言迅速,工作量小、可读性好,易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编语言代码生成的目标程序效率低10%~20%。因此,C语言可以编写系统软件。
二十世纪八十年代,美国国家标准局为了避免各开发厂商用的C语言语法产生差异,给C语言制定了一套完整的美国国家标准语法,称为ANSI C。作为C语言最初的标准。[2]2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。

C语言编译器普遍存在于各种不同的操作系统中,例如Microsoft Windows, Mac OS X, Linux, Unix等。C语言的设计影响了众多后来的编程语言,例如C++、Objective-C、Java、C#等。

热心网友 时间:2022-05-03 12:14

如果删除一个字符,那就简单了。

#include<stdio.h>

voidmain()

{

inti=0,j,k;

chararray[20];

printf("pleaseinputthisarray\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-05-03 14:05

#include <stdio.h>

#include <string.h>

char delch(char p[30], char del)

{

    int i;

    for (i = 0; i < strlen(p); i++) {

        if (p[i] == del) {

            strcpy(p + i, p + i + 1); // 用现成的函数不是更好么?

        }

    }

    return del; // 这个函数不需要返回值,如果返回,可以返回要删除的字符

}

main()

{

    ... // 省略了哈

}

呵呵,你可以试一下这个,尽量不要自己造轮子,因为已经有现成的了

热心网友 时间:2022-05-03 16:13

子函数不需要返回值,因为传入的数组。
main中我写了自己的测试代码,你可以替换你自己的。
主要修改了子函数delch
修改后:
#include<stdio.h>
#include<string.h>

void delch(char p[30],char del)
{
int i,j;
for(i=0;i<strlen(p);i++)
{
if(p[i] == del)
{
for(j=i;j<strlen(p);j++)
{
p[j] = p[j+1];
}
i--;
}
}
}

void main()
{
char s[30]="sfdkeialksdjf",del='d';
delch(s,del);
printf("%s",s);
}

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