程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C++完成斷定字符串能否回文實例解析

C++完成斷定字符串能否回文實例解析

編輯:關於C++

C++完成斷定字符串能否回文實例解析。本站提示廣大學習愛好者:(C++完成斷定字符串能否回文實例解析)文章只能為提供參考,不一定能成為您想要的結果。以下是C++完成斷定字符串能否回文實例解析正文


本文實例解析了C++斷定字符串能否回文的完成進程,經由過程數據構造中的相干例子,回文斷定中采取過濾空格字符、有用字符順次入棧等辦法完成該功效。

詳細實例代碼以下:

#include <iostream>
using namespace std;
#define Max_String_Len 100
#include "SqStack.h"
//斷定字符串能否回文
bool ispalindrome(char *in_string)
{
 SqStack <char> s(Max_String_Len);
    char deblankstring[Max_String_Len], c;
 int i = 0;
 //過濾空格字符
 while(*in_string != '\0'){
    if(*in_string != ' ')
 deblankstring[i++] = *in_string;
 in_string++;
  }
  deblankstring[i] = '\0';
 //有用字符順次入棧
 i = 0;
 while(deblankstring[i] != '\0')
    s.Push(deblankstring[i++]);
 //從棧中彈出字符順次比擬
    i = 0;
  while(!s.Empty()){
 c = s.Top();
    s.Pop();
    if(c != deblankstring[i])
      return false;
      i++;
  }
 return true;
}
int main()
{
  char instring[Max_String_Len];
  cout << "input a string:" << endl;
  cin.get(instring, Max_String_Len);
  //cout<<instring;
  if(ispalindrome(instring))
    cout << "\"" << instring << "\"" << " is a palindrome." << endl;
  else
    cout << "\"" << instring << "\"" << " is not a palindrome." << endl;
  system("pause");
  return 0;
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved