我要求用字符串中的点替换所有的惊叹号。我提出了一个函数,但我收到错误,因为它没有改变最后一个感叹号。这只是最后一次感叹。
输入是:
我们将继续我们在太空中的探索。将有更多的班车航班和更多的班车服务员,是的,更多的志愿者,更多的平民,更多的太空教师。没有什么在这里结束;我们的希望和旅程继续!
我的功能是:
string ReplaceExclamation(string text)
{
string newText = text;
int i, len = text.size();
for(i=0; i<len; i++)
{
if(text[i] == '!')
newText[i] = '.';
}
return newText;
}
是否有人知道如何核心它,因为它只是最后的感叹号。 感谢
答案 0 :(得分:3)
答案 1 :(得分:0)
字符串库的长度函数不包括字符串末尾的'\ 0'字符。因此,您可以在for循环中尝试len + 1作为终止条件。
string ReplaceExclamation(string text)
{
string newText = text;
int i, len = text.size();
for(i=0; i<len+1; i++)
{
if(text[i] == '!')
newText[i] = '.';
}
return newText;
}
希望它有所帮助!