21xrx.com
2024-09-20 00:59:09 Friday
登录
文章检索 我的文章 写文章
如何用C++的for循环判断回文数
2023-07-03 20:18:00 深夜i     --     --
C++ for循环 判断 回文数

回文数是指正反读都一样的数字,例如121、1221等等。在编程领域中,判断一个数字是否为回文数是常见的任务之一。下面,我们将介绍使用C++的for循环来判断回文数的方法。

首先,我们需要将数字转换为字符串进行判断。可以使用C++中的字符串类——string。将数字转换为字符串,可以使用C++中的to_string函数。

其次,我们需要使用for循环依次比较字符串中对应位置的字符。具体地,我们可以使用两个指针i和j分别指向字符串的首尾字符,然后依次比较它们所指向的字符是否相等。当i和j指向的字符不相等时,说明不是回文数,可以直接退出循环并输出不是回文数的信息。如果循环结束后都没有退出,说明是回文数,可以输出是回文数的信息。

下面是具体的代码实现:


#include <iostream>

#include <string>

using namespace std;

int main()

{

  int num;

  cout << "请输入一个数字:";

  cin >> num;

  string str = to_string(num);

  int length = str.length();

  bool isPalindrome = true;

  for (int i = 0, j = length - 1; i < j; i++, j--)

  {

    if (str[i] != str[j])

    

      isPalindrome = false;

      break;

    

  }

  if (isPalindrome)

  

    cout << num << "是回文数。" << endl;

  

  else

  

    cout << num << "不是回文数。" << endl;

  

  return 0;

}

在这个例子中,我们首先输入一个数字,然后将其转换为字符串,再计算出字符串的长度。之后,我们用for循环依次比较字符串中对应位置的字符,判断它们是否相等。当不相等时,我们将isPalindrome标记为false,并跳出循环。最后,根据isPalindrome的值来输出结果。

综上所述,C++的for循环可以方便地判断回文数。我们可以将数字转换为字符串后,用两个指针依次比较字符串中对应位置的字符。如果都相等,则说明是回文数,否则不是。

  
  

评论区

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