- 题意:
如果字符串中如果有一个地方有一个或者多个连续的空格出现,就把他们改成单个空格字符。
- 例子:
How are you?
How are you?
- 思想:
采用遍历的方法,当碰到一个空格,就将它打印出来,之后碰到的空格就直接跳过。
- 代码
void deblank(char string[]) {
char* string_temp = string;
int i, j;
for (i = 0,j = 0; string_temp[i] != '\0';j++){
string[j] = string_temp[i];
printf("%c", string[j]);
i++;
if (string_temp[i] == ' '){ //第一次遇到空格,将其打印
printf("%c", string[i]);
}
while (string_temp[i] == ' '){ //后来遇到的空格直接跳过
i++;
}
}
}