编写一个函数 delchar,删除给定字符串中的指定字符,如字符串“abrtgt”,删除\n指定学符℃后,字符串变为“abdef”,主函数完成给定字符串和指定字符雨输入,调用所\n编函数 delchar,
时间: 2023-05-03 11:02:47 浏览: 54
该题目要求编写一个函数delchar,它可以删除给定字符串中的指定字符,例如字符串"abrtgt",删除\n字符后变为"abrtgt",主函数完成后调用delchar函数,将给定字符串变为"abdef",然后将指定字符串和指定字符雨输入,调用delchar函数,完成字符串的删除指定字符操作。
相关问题
编写函数Delete()在字符串中删除给定的某字符。例如:在"hello“中删掉'l',结果为"heo". 然后在主函数中,输入字符串和待删除的字符,再调用函数Delete删除字符串中与该字符相同的字符,最后输出删除字符后的字符串。 程序运行结果示例: Input a string: hello, my friend!↙ Input a character: l↙ Results:heo, my friend! 输入格式: 输入字符串用 gets()函数 输入单个字符用 getchar()函数 输出格式: 输入字符串的提示信息: "Input a string:\n" 输入单个字符的提示信息: "Input a character:\n" 输出格式: "Results:%s\n"
以下是C语言的代码实现:
```
#include <stdio.h>
#include <string.h>
void Delete(char str[], char c)
{
int len = strlen(str);
int i, j;
for (i = 0, j = 0; i < len; i++)
{
if (str[i] != c)
{
str[j] = str[i];
j++;
}
}
str[j] = '\0';
}
int main()
{
char str[100];
char c;
printf("Input a string:\n");
gets(str);
printf("Input a character:\n");
c = getchar();
Delete(str, c);
printf("Results:%s\n", str);
return 0;
}
```
使用`gets()`函数输入字符串,使用`getchar()`函数输入单个字符。然后调用`Delete()`函数,该函数遍历字符串,将不等于给定字符的字符拷贝到新的位置上,最后在新位置的字符串末尾添加一个`\0`。最后输出删除字符后的字符串。
c语言编写函数Delete()在字符串中删除给定的某字符。例如:在"hello“中删掉'l',结果为"heo". 然后在主函数中,输入字符串和待删除的字符,再调用函数Delete删除字符串中与该字符相同的字符,最后输出删除字符后的字符串。 程序运行结果示例: Input a string: hello, my friend!↙ Input a character: l↙ Results:heo, my friend! 输入格式: 输入字符串用 gets()函数 输入单个字符用 getchar()函数 输出格式: 输入字符串的提示信息: "Input a string:\n" 输入单个字符的提示信息: "Input a character:\n" 输出格式: "Results:%s\n"
C语言代码如下:
```c
#include <stdio.h>
#include <string.h>
#define MAXN 100
void Delete(char s[], char c) {
int len = strlen(s);
int j = 0;
for (int i = 0; i < len; i++) {
if (s[i] != c) {
s[j++] = s[i];
}
}
s[j] = '\0';
}
int main() {
char s[MAXN], c;
printf("Input a string:\n");
gets(s);
printf("Input a character:\n");
c = getchar();
Delete(s, c);
printf("Results:%s\n", s);
return 0;
}
```
这个程序与C++程序的思路基本一致。使用gets函数读入字符串,getchar函数读入待删除的字符,然后调用Delete函数删除字符串中与该字符相同的字符,最后输出删除后的字符串。需要注意的是,由于C语言中没有iostream头文件,所以输入输出要使用printf和scanf函数。
阅读全文