21xrx.com
2024-09-20 05:31:50 Friday
登录
文章检索 我的文章 写文章
C++程序:输出字符串中最长的单词
2023-06-28 08:14:16 深夜i     --     --
C++ 输出 字符串 最长单词

在编程中,经常需要处理字符串,其中一个常见的需求是输出字符串中最长的单词。本篇文章将介绍如何用C++语言编写一个函数,实现这一功能。

步骤一:定义函数

首先需要定义一个函数,该函数有一个字符串参数,返回该字符串中最长的单词。如下所示:


string FindLongestWord(string str)

  // 代码

步骤二:定义变量

在函数内部,需要定义一些变量。如下所示:


string longestWord = "";  // 最长的单词

string currentWord = "";  // 当前的单词

int maxLength = 0;     // 最长单词的长度

int currentLength = 0;   // 当前单词的长度

int len = str.length();  // 字符串的长度

其中,最长的单词、当前的单词、最长单词的长度、当前单词的长度分别用字符串类型和整型变量表示。另外,还用len表示字符串的长度,方便后面遍历字符串时使用。

步骤三:遍历字符串

接下来需要对字符串进行遍历,找到其中的最长单词。代码如下所示:


for (int i = 0; i <= len; i++)

{

  if (str[i] == ' ' || i == len)

  {

    if (currentLength > maxLength)

    

      maxLength = currentLength;

      longestWord = currentWord;

    

    currentWord = "";

    currentLength = 0;

  }

  else

  {

    currentWord += str[i];

    currentLength++;

  }

}

可以看到,这段代码使用for循环遍历整个字符串。在循环过程中,如果遇到空格或字符串末尾,就将当前单词与最长单词进行比较,如果当前单词更长,则更新最长单词和最大长度。另外,还需要将当前单词和长度清零,以便处理下一个单词。

如果不是空格或字符串末尾,则将字符添加到当前单词中,并更新长度。

步骤四:返回结果

在函数的最后,需要返回最长单词。代码如下所示:


return longestWord;

完整代码

最终,整个函数的代码如下所示:


string FindLongestWord(string str)

{

  string longestWord = "";

  string currentWord = "";

  int maxLength = 0;

  int currentLength = 0;

  int len = str.length();

  for (int i = 0; i <= len; i++)

  {

    if (str[i] == ' ' || i == len)

    {

      if (currentLength > maxLength)

      

        maxLength = currentLength;

        longestWord = currentWord;

      

      currentWord = "";

      currentLength = 0;

    }

    else

    {

      currentWord += str[i];

      currentLength++;

    }

  }

  return longestWord;

}

总结

至此,我们已经学会了如何用C++编写一个函数,实现输出字符串中最长的单词的功能。在实际的编程中,读者可以根据实际情况对此代码进行改进和优化,来满足不同的需求。

  
  
下一篇: DevC++编程教程

评论区

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