C语言删除字符串中的空格
时间: 2023-09-13 18:11:28 浏览: 80
可以使用循环遍历字符串,判断每个字符是否为空格,如果不是空格则将其加入到一个新的字符串中。最后将新的字符串赋值给原来的字符串即可删除空格。
下面是一个简单的示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100], newStr[100];
int i, j = 0;
printf("请输入一个字符串:");
gets(str);
for (i = 0; str[i] != '\0'; i++) {
if (str[i] != ' ') {
newStr[j++] = str[i];
}
}
newStr[j] = '\0';
strcpy(str, newStr);
printf("删除空格后的字符串为:%s", str);
return 0;
}
```
需要注意的是,这里使用了 gets 函数来获取用户输入的字符串,但是 gets 函数不安全,可能会导致缓冲区溢出等问题。实际应用中,应该使用更安全的函数,比如 fgets。
相关问题
c语言输出字符串中空格数
在C语言中,输出字符串中的空格数可以通过遍历字符串并计算空格字符的出现次数来实现。下面是一个简单的示例代码:
```c
#include <stdio.h>
int main() {
char str[] = "这是一个示例字符串,包含一些空格";
int count = 0;
// 遍历字符串直到遇到字符串结束符'\0'
for (int i = 0; str[i] != '\0'; ++i) {
// 检查当前字符是否为空格字符
if (str[i] == ' ') {
count++; // 如果是空格,增加计数器
}
}
printf("字符串中的空格数为:%d\n", count); // 输出空格数量
return 0;
}
```
这段代码首先定义了一个字符串`str`,然后通过一个循环遍历该字符串。在循环中,它检查每个字符是否为空格(' '),如果是,则增加计数器`count`的值。遍历完成后,使用`printf`函数输出空格的总数。
c语言统计字符串中空格数
可以使用循环遍历字符串中的每一个字符,判断是否为空格,如果是,则计数器加一。代码如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int count = 0;
printf("请输入一个字符串:");
fgets(str, sizeof(str), stdin); // 从标准输入读取字符串
for (int i = 0; i < strlen(str); i++) {
if (str[i] == ' ') { // 如果当前字符是空格
count++; // 计数器加一
}
}
printf("空格数为:%d\n", count);
return 0;
}
```
注意:这里使用了 `fgets()` 函数来从标准输入读取字符串,因为 `gets()` 函数存在安全隐患,不建议使用。
阅读全文