用c语言编写一个程序一维字符数组去除空格 (数组内容外部输入) 例:ABCD ABC AB A变成ABCDABCABA
时间: 2024-11-09 07:21:42 浏览: 20
在C语言中,你可以使用循环和条件判断来编写一个简单的程序,用于删除一维字符数组中的连续空格。下面是一个示例程序:
```c
#include <stdio.h>
#include <string.h>
void removeSpaces(char* arr) {
int len = strlen(arr);
if (len > 0 && arr[0] == ' ') { // 如果第一个字符就是空格,则跳过
arr++; // 移动指针到下一个字符
len--;
}
int i = 0;
while (i < len) { // 遍历数组,直到找到非空格字符
if (arr[i] != ' ') { // 非空格字符直接复制到新位置
arr[i] = arr[i]; // 这里不需要赋值,因为已经相等了
}
else { // 空格则跳过
while (arr[i] == ' ') { // 找到并跳过连续的空格
i++;
}
}
i++; // 移动到下一个字符
}
arr[len] = '\0'; // 在结束位置添加终止符,确保字符串完整
}
int main() {
char input[100];
printf("请输入一维字符数组(包含空格):");
fgets(input, sizeof(input), stdin); // 从标准输入获取字符串
removeSpaces(input); // 去除空格
printf("处理后的结果:%s\n", input);
return 0;
}
```
运行此程序时,它会提示用户输入含有空格的一维字符数组,然后自动去除非连续的空格,将结果打印出来。
阅读全文