使用C语言编写,编写函数,去掉一个字符串中除头部和尾部空格外的所有空格,并编写主函数进行调用测试。 输入: 占一行(注:输入的字符串长度不会超过80) 输出: 占一行
时间: 2024-02-05 15:13:45 浏览: 84
C语言实现去除字符串中空格的简单实例
以下是实现该功能的代码:
```c
#include <stdio.h>
#include <string.h>
void remove_spaces(char str[]) {
int len = strlen(str);
int i, j;
for (i = 0; str[i] == ' '; i++); // skip leading spaces
for (j = len - 1; str[j] == ' '; j--); // skip trailing spaces
int k = 0;
for (; i <= j; i++) {
if (str[i] != ' ') {
str[k++] = str[i];
}
}
str[k] = '\0';
}
int main() {
char str[81];
printf("Enter a string: ");
fgets(str, sizeof(str), stdin);
remove_spaces(str);
printf("String with spaces removed: %s\n", str);
return 0;
}
```
该程序首先定义了一个函数 `remove_spaces`,该函数接受一个字符串参数,并修改该字符串以去除除头部和尾部空格外的所有空格。具体地,该函数首先找到字符串中第一个非空格字符的位置,然后找到字符串中最后一个非空格字符的位置,最后遍历字符串,将非空格字符向前移动,以去除空格字符。
主函数中,首先从标准输入中读取一个字符串,然后调用 `remove_spaces` 函数,最后打印修改后的字符串。
阅读全文