c语言:输入一个字符串(串长不超过60),将字符串中连续的空格符保留1个。如输入字符串为 " I am a student.",输出字符串为 " I am a student."。
时间: 2024-02-05 13:12:59 浏览: 99
可以通过遍历输入的字符串,判断连续的空格符的数量,仅保留一个空格符,其余的替换为非空格字符,最后输出处理后的字符串。
以下是示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[61]; // 存储字符串,最大长度为60
printf("请输入字符串:");
fgets(str, 61, stdin); // 使用fgets输入字符串,防止字符串溢出
int len = strlen(str);
int count = 0; // 连续空格符的数量
for (int i = 0; i < len; i++) {
if (str[i] == ' ') { // 如果当前字符是空格符
count++; // 连续空格符数量+1
if (count == 1) { // 如果只有1个连续空格符,保留
continue;
} else { // 如果连续空格符数量大于1,替换为空格后面的字符
str[i] = str[i+1];
}
} else { // 如果当前字符不是空格符,连续空格符数量清零
count = 0;
}
}
printf("处理后的字符串为:");
puts(str); // 使用puts输出字符串,自动换行
return 0;
}
```
输入示例:
```
请输入字符串: I am a student.
```
输出示例:
```
处理后的字符串为: I am a student.
```
阅读全文