请编写函数fun,它的功能是删除字符串中所有空格
时间: 2024-02-27 12:59:03 浏览: 19
好的,以下是函数fun的实现(使用Python语言):
```python
def fun(s):
"""
删除字符串中所有空格
"""
return s.replace(' ', '')
```
函数说明:
- 函数名:fun
- 参数:一个字符串s
- 返回值:删除所有空格后的字符串
函数实现逻辑:
- 使用replace方法将字符串中的所有空格替换为空字符串
使用方法:
```python
>>> s = "I love coding"
>>> fun(s)
'Ilovecoding'
```
注意:该函数只会删除空格,不会删除其他的空白字符,如换行符、制表符等。如果需要删除其他空白字符,可以在函数中添加相应的处理逻辑。
相关问题
请编写函数void fun(char *s),将其中所有空格删除,在主函数中完成字符串的输入及输出。
好的,下面是函数的实现:
```c
void fun(char *s) {
char *p = s; // 指向字符串起始位置的指针
while (*p != '\0') { // 遍历整个字符串
if (*p != ' ') { // 如果当前字符不是空格
*s++ = *p; // 将当前字符复制到新的位置
}
p++; // 移动指针
}
*s = '\0'; // 在新的字符串结尾添加'\0'
}
```
在主函数中,可以这样调用函数:
```c
int main() {
char str[100];
printf("请输入字符串:");
scanf("%[^\n]", str); // 输入字符串,可以含有空格
fun(str); // 调用函数删除空格
printf("删除空格后的字符串为:%s\n", str); // 输出结果
return 0;
}
```
注意,scanf函数中的"%[^\n]"表示输入一行字符串,直到遇到换行符为止。这样可以保证输入的字符串中包含空格。
规定输人的字符串中只包含字母和符号。请编写函数 fun,其功能是:将字符串中的前导号全部移到字符串的结尾。
以下是一个示例代码实现:
```c
#include <stdio.h>
#include <string.h>
void fun(char *str) {
int len = strlen(str);
int i, j;
for (i = 0; i < len; i++) {
if (str[i] != ' ' && str[i] != '\t')
break;
}
if (i == len) // 字符串全为空格或制表符
return;
for (j = i; j < len; j++) {
if (str[j] == ' ' || str[j] == '\t')
break;
}
if (j == len) // 字符串无空格或制表符
return;
while (j < len) {
char c = str[j];
for (int k = j; k > i; k--)
str[k] = str[k - 1];
str[i] = c;
i++;
j++;
while (i < len && (str[i] == ' ' || str[i] == '\t'))
i++;
while (j < len && str[j] != ' ' && str[j] != '\t')
j++;
}
}
int main() {
char str[100];
printf("请输入字符串:");
gets(str);
fun(str);
printf("处理后的字符串为:%s\n", str);
return 0;
}
```
其中,`fun` 函数实现了将字符串中的前导空格或制表符全部移到字符串的结尾的功能。程序运行结果如下:
```
请输入字符串: abcd efgh
处理后的字符串为:abcd efgh
```