21xrx.com
2024-11-08 22:11:34 Friday
登录
文章检索 我的文章 写文章
C++编程:如何判断回文数
2023-06-27 08:40:03 深夜i     --     --
C++编程 判断 回文数

回文数是指正反读都一样的数字,例如121、1221都是回文数。在C++编程中,判断一个数是否回文数可以通过以下步骤实现:

1.将该数转换成字符串类型

2.设置两个指针,分别指向字符串的首尾

3.依次比较两个指针所指向的字符,如果字符相同则将指针向中间移动,如果出现不同的字符则表明该数不是回文数

下面是一段实现判断回文数的C++代码:


#include <iostream>

#include <string>

using namespace std;

bool isPalindrome(int x) {

  string str = to_string(x); // 将数字转化为字符串

  int left = 0, right = str.length() - 1; // 设置两个指针

  while (left < right) {

    if (str[left] != str[right]) // 如果出现不同的字符则表明该数不是回文数

      return false;

    left++; // 将指针向中间移动

    right--;

  }

  return true; // 如果没有出现不同的字符则表明该数是回文数

}

int main() {

  int x = 121;

  if (isPalindrome(x))

    cout << x << " is palindrome." << endl;

  else

    cout << x << " is not palindrome." << endl;

  return 0;

}

以上代码中,我们使用了C++中的`to_string`函数将数字转换为字符串类型,使用`length()`函数获取字符串长度,使用while循环依次比较字符串首尾指针所指向的字符是否相同,如果不同则返回false,否则返回true表明该数是回文数。

在实际运用中,我们可以将判断回文数的函数封装进我们自己的工具类中使用,并根据需求对其进行适当的修改和扩展。

  
  

评论区

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