编程从键盘输入一个字符串,删除字符串中的前导空格,中间和尾部的空格不删除的c语言代码
时间: 2023-06-17 09:08:14 浏览: 127
可以使用指针来实现这个功能,代码如下:
```c
#include <stdio.h>
#include <string.h>
void delete_space(char *str)
{
char *p = str;
int len = strlen(str);
// 删除前导空格
while (*p == ' ') {
p++;
len--;
}
// 删除尾部空格
while (len > 0 && *(str + len - 1) == ' ') {
len--;
}
*(str + len) = '\0';
// 移动字符串
if (p != str) {
memmove(str, p, len + 1);
}
}
int main()
{
char str[100];
printf("请输入字符串:");
fgets(str, sizeof(str), stdin);
// 删除空格
delete_space(str);
printf("删除空格后的字符串为:%s\n", str);
return 0;
}
```
在这个代码中,我们首先使用 `fgets` 函数从标准输入中读取字符串,并将其存储在 `str` 变量中。然后,我们调用 `delete_space` 函数,将字符串中的前导空格和尾部空格删除。最后,我们输出删除空格后的字符串。
阅读全文