21xrx.com
2024-11-08 20:17:10 Friday
登录
文章检索 我的文章 写文章
使用c++语言编写回文字符串程序
2023-07-07 18:18:47 深夜i     --     --
C++ 回文字符串 编程 算法 字符处理

回文字符串是指正读反读都相同的字符串,例如"level"、"racecar"等等。编写回文字符串程序可以帮助我们更好地理解字符串的操作。下面使用c++语言编写一个回文字符串程序。

首先,我们需要定义一个字符串变量,用于存储用户输入的字符串。代码如下:


string str;

cout << "请输入一个字符串:";

getline(cin, str);

这段代码中,我们使用getline函数从标准输入流中读取字符串,并将其存储在str变量中。

接下来,我们需要编写回文字符串判断函数。这里我们通过比较字符串的首尾字符来判断是否为回文字符串。具体实现如下:


bool isPalindrome(string str) {

  int len = str.length();

  for (int i = 0; i < len / 2; i++) {

    if (str[i] != str[len - i - 1])

      return false;

    

  }

  return true;

}

这段代码中,我们首先获取字符串的长度,然后使用for循环遍历字符串的前一半字符,比较其和后一半字符是否相同。如果不同,则返回false,否则返回true。

最后,我们调用isPalindrome函数,并根据其返回值输出判断结果。完整代码如下:


#include <iostream>

#include <string>

using namespace std;

bool isPalindrome(string str) {

  int len = str.length();

  for (int i = 0; i < len / 2; i++) {

    if (str[i] != str[len - i - 1])

      return false;

    

  }

  return true;

}

int main() {

  string str;

  cout << "请输入一个字符串:";

  getline(cin, str);

  bool result = isPalindrome(str);

  if (result)

    cout << "这是一个回文字符串。" << endl;

   else

    cout << "这不是一个回文字符串。" << endl;

  

}

使用上面的代码,我们可以根据用户输入的字符串判断其是否为回文字符串。这个程序不仅可以帮助我们更好地理解字符串的操作,还可以在日常生活中使用,例如判断一个单词是否为回文单词。

  
  

评论区

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