#include <iostream> #include <string> #include <cstring> using namespace std; void stringBlank(char *str) { /**********Program**********/ /********** End **********/ } int main() { char string[256], *pStr; pStr = string; /* 从键盘获取一个字符串,字符串中可含空格,以回车表示结束;*/ cin.getline(string,256); stringBlank(pStr); cout<<string<<endl; return 0; } 一个长度不超过 255 的字符串前后各有若干个无用的空格,编写函数stringBlank,将该字符串前后的无用空格去除。 说明:允许字符串之间出现空格。
时间: 2023-07-23 16:05:57 浏览: 93
#include <iostream>
#include <string>
#include <cstring>
using namespace std;
void stringBlank(char *str)
{
int len = strlen(str);
int start = 0;
int end = len - 1;
// 寻找第一个非空格字符的位置
while (str[start] == ' ')
{
start++;
}
// 寻找最后一个非空格字符的位置
while (str[end] == ' ')
{
end--;
}
// 将非空格字符移到字符串的起始位置
int index = 0;
for (int i = start; i <= end; i++)
{
str[index++] = str[i];
}
// 添加字符串结束符
str[index] = '\0';
}
int main()
{
char string[256], *pStr;
pStr = string;
/* 从键盘获取一个字符串,字符串中可含空格,以回车表示结束;*/
cin.getline(string, 256);
stringBlank(pStr);
cout << string << endl;
return 0;
}
阅读全文