IOS面试专题

【MAC 上学习 C++】Day 50-5. 实验8-2-5 判

2019-10-13  本文已影响0人  RaRasa

实验8-2-5 判断回文字符串 (20 分)

1. 题目摘自

https://pintia.cn/problem-sets/13/problems/554

2. 题目内容

本题要求编写函数,判断给定的一串字符是否为“回文”。所谓“回文”是指顺读和倒读都一样的字符串。如“XYZYX”和“xyzzyx”都是回文。

函数接口定义:

bool palindrome( char *s );
函数palindrome判断输入字符串char *s是否为回文。若是则返回true,否则返回false。

输入样例1:

thisistrueurtsisiht

输出样例1:

Yes
thisistrueurtsisiht

输入样例2:

thisisnottrue

输出样例2:

No
thisisnottrue

3. 源码参考
#include <iostream>
#include <string.h>

using namespace std;

#define MAXN 20

bool palindrome( char *s );

int main()
{
    char s[MAXN];

    cin.get(s, MAXN, '\n');
    if ( palindrome(s)==true )
    {
      cout << "YES" << endl;
    }
    else
    {
      cout << "NO" << endl;
    }

    cout << s << endl;

    return 0;
}

bool palindrome( char *s )
{
  int i, n;
  int flg;

  n = strlen(s);
  flg = 0;
  for(i = 0; i < n / 2; i++)
  {
    if(s[i] != s[n - i - 1])
    {
      flg = 1;
      break;
    }
  }

  if(flg == 0)
  {
    return true;
  }

  return false;
}
上一篇下一篇

猜你喜欢

热点阅读