【20年扬大真题】
删除字符串s中的所有空格
代码思路:
可以定义一个辅助的字符数组tmp,一边遍历字符串s,一边用tmp暂存s中的非空格元素。
遍历完s之后,再把tmp中的元素赋给字符串s即可
#include<stdio.h>
#define MaxSize 10
int main()
{
char s[MaxSize];
int i = 0;
printf("请输入字符串s:");
for (i = 0;i < MaxSize;i++) {
scanf("%c", &s[i]);
}
char tmp[MaxSize];
int j = 0;//标记tmp下标
for (i = 0;i < MaxSize;i++) {
if (s[i] != ' ') {
tmp[j] = s[i];
j++;
}
}
for (i = 0;i < j;i++) {
s[i] = tmp[i];
}
s[i] = '\0';//字符串结束标识符
printf("去除空格之后的字符串s为:");
for (i = 0;i < MaxSize;i++)
{
if (s[i] == '\0') {
break;
}
else {
printf("%c", s[i]);
}
}
return 0;
}