21xrx.com
2024-12-22 22:14:06 Sunday
登录
文章检索 我的文章 写文章
C++编程:判断回文并输出长度
2023-07-04 13:26:18 深夜i     --     --
C++ 编程 回文 输出 长度

回文是指正读和反读都一样的文字或数字序列。在C++编程中,我们可以使用循环和数组来判断一个字符串或数字是否为回文,并输出其长度。

首先,我们需要定义一个字符串或数字数组,存储要判断的内容。然后,我们可以使用循环将数组中的每个字符或数字与其对称位置上的字符或数字进行比较,如果全部相等,就说明这个数组是回文的。

以下是一个用循环判断字符串是否为回文的示例代码:


#include <iostream>

#include <string.h>

using namespace std;

int main()

{

  char str[100];

  int n, i, j;

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

  cin >> str;

  n = strlen(str);

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

  {

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

    

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

      break;

    

  }

  if (i >= j)

  

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

    cout << "字符串长度为:" << n << endl;

  

  return 0;

}

在这个程序中,我们先定义了一个字符串数组`str`,然后通过`cin`函数获取用户输入的字符串,并使用`strlen`函数计算出字符串的长度`n`。接着,我们使用两个指针`i`和`j`分别从字符串的头和尾向中间遍历,每次比较它们所指向的字符是否相等。如果不相等,就说明这个字符串不是回文的,于是输出错误信息并跳出循环。如果循环完成后`i>=j`,则说明这个字符串是回文的,同时输出字符串长度。

如果要判断数字是否为回文,可以将数字转换为字符串,然后按照上面的方法进行比较。另外,我们也可以使用堆栈来实现判断回文,这是一个更高效的方法,但需要使用STL库的`stack`类。

综上所述,判断回文并输出长度是C++编程中比较常见的问题,掌握这种算法可以让我们更好地理解数组、指针和循环等基础知识,并能够解决实际问题。

  
  

评论区

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