21xrx.com
2024-12-22 22:50:23 Sunday
登录
文章检索 我的文章 写文章
C++编写函数输入一串字符,输出最长单词
2023-07-09 00:10:59 深夜i     --     --
C++ 函数 输入 字符串 最长单词

最近,我学习了如何在C++中编写一个函数,输入一串字符,然后输出其中最长的单词。这是一个有趣的练习项目,也有助于提高代码能力。在这篇文章中,我将介绍我的思路和解决方法。

首先,我定义了一个名为`findLongestWord`的函数,它接受一个字符串类型的参数。在函数的主体中,我创建了一个`currentWord`字符串变量来跟踪当前正在处理的单词,然后遍历输入字符串的每个字符。

如果当前字符是字母,则我将它添加到`currentWord`中。如果当前字符是空格,说明一个单词结束,所以我检查`currentWord`的长度,如果比之前的最长单词要长,就更新最长单词的值。最后,我重置`currentWord`字符串并继续检查下一个单词。

以下是完整的`findLongestWord`函数代码:


string findLongestWord(string inputString) {

  string longestWord = "";

  string currentWord = "";

  for (char c : inputString) {

    if (isalpha(c)) {

      currentWord += c;

    }

    else {

      if (currentWord.length() > longestWord.length())

        longestWord = currentWord;

      

      currentWord = "";

    }

  }

  if (currentWord.length() > longestWord.length())

    longestWord = currentWord;

  

  return longestWord;

}

接下来,我编写了一个简单的测试程序来验证我的代码是否能够正常工作。下面是测试程序的代码:


int main() {

  string input = "Hello world, how are you?";

  string longestWord = findLongestWord(input);

  cout << "The longest word in \"" << input << "\" is \"" << longestWord << "\"." << endl;

  return 0;

}

这个程序会输出以下结果:


The longest word in "Hello world, how are you?" is "Hello".

你可以使用不同的字符串来测试`findLongestWord`函数,看看它是否能达到你的预期效果。

在本篇文章中,我介绍了如何在C++中编写一个函数,输入一串字符,然后输出其中最长的单词。我希望这个项目能够帮助你在C++中提高编程技巧。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复