c语言输入一个字符串,讲所有东西空格删掉 并输出
时间: 2024-10-06 17:01:03 浏览: 17
在C语言中,如果你想从用户输入的字符串中删除所有的空格,并将其输出,可以使用`strtok()`函数配合循环。首先需要创建一个动态数组来存储结果,因为原始字符串长度可能会变短。这里是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LENGTH 100
int main() {
char str[100];
printf("请输入一个字符串: ");
fgets(str, sizeof(str), stdin); // 读取用户输入直到换行符
str[strcspn(str, "\n")] = '\0'; // 删除换行符
char* token = strtok(str, " "); // 分割字符串,空格作为分隔符
char result[MAX_LENGTH] = "";
while (token != NULL) {
strcat(result, token);
token = strtok(NULL, " "); // 再次分割,直到无更多字符
}
printf("去除空格后的字符串: %s\n", result);
return 0;
}
```
这段代码会提示用户输入字符串,然后删除其中的所有空格,最后输出处理后的字符串。
相关问题
如何用C语言删除一个字符串最左边的空格并输出
可以使用指针和循环来删除字符串最左边的空格,具体实现如下:
```c
#include <stdio.h>
#include <string.h>
void remove_left_space(char *str) {
while (*str == ' ') { // 循环删除左边的空格
str++;
}
printf("%s", str); // 输出删除空格后的字符串
}
int main() {
char str[100];
printf("请输入一个字符串:");
fgets(str, sizeof(str), stdin); // 从标准输入获取字符串
str[strcspn(str, "\n")] = '\0'; // 去除输入字符串中的换行符
remove_left_space(str);
return 0;
}
```
在这个程序中,首先使用 `fgets` 函数从标准输入获取一个字符串,并将其中的换行符去除。接着,定义 `remove_left_space` 函数来删除左边的空格,并输出删除空格后的字符串。最后,在 `main` 函数中调用 `remove_left_space` 函数即可。
C语言输入一个字符串,然后输入一个想要删除的字符,输出删除该字符后的字符串
在C语言中,你可以使用`scanf`函数来读取用户输入的字符串和字符,然后通过遍历字符串,将不需要删除的字符复制到新的字符串中,从而实现删除特定字符的功能。以下是实现这一功能的基本步骤和示例代码:
1. 使用`scanf`函数读取用户输入的字符串到一个字符数组中。
2. 再次使用`scanf`读取用户想要删除的字符。
3. 遍历原始字符串,对于每一个不是要删除的字符,将其复制到新的字符串数组中。
4. 在新的字符串数组的末尾添加一个空字符`\0`来标识字符串的结束。
5. 使用`printf`函数输出修改后的字符串。
示例代码如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100]; // 假设输入的字符串不超过99个字符
char c;
char new_str[100]; // 存储删除字符后的字符串
int i, j = 0;
// 输入原始字符串
printf("请输入一个字符串: ");
scanf("%s", str);
// 输入要删除的字符
printf("请输入要删除的字符: ");
scanf(" %c", &c); // 注意%c前面有一个空格,用来消除前一个输入后留在输入流中的换行符
// 遍历并删除字符
for (i = 0; str[i] != '\0'; i++) {
if (str[i] != c) {
new_str[j++] = str[i]; // 复制不等于c的字符
}
}
new_str[j] = '\0'; // 确保新字符串以空字符结尾
// 输出结果
printf("删除字符 '%c' 后的字符串是: %s\n", c, new_str);
return 0;
}
```
注意:这里假设用户输入的字符串长度不会超过数组`str`的大小(99个字符),并且输入的字符串不包含空格。在实际应用中,应该对用户输入进行检查以防止缓冲区溢出,并且处理更复杂的情况,如输入包含空格的字符串等。