递归回文函数 这是我解决问题的方法 在我的解决方案中有一个错误包装,而不是回文部分不打印
#include<iostream>
#include<cstring>
using namespace std;
bool ispalindrome( char string1[],int length);
int main()
{
string word;
cout<<"Enter a word: ";
cin>> word;
if(ispalindrome)
cout<<"The input word is palindrome";
else
cout<<"The input word is NOT palindrome";
return 0;
}
bool ispalindrome( char string1[],int length)
{
if(length<=1)
return true;
if ((*string1)==string1[length-1])
return ispalindrome(string1+1, length-2);
else return false;
}
答案 0 :(得分:0)
您需要在ispalindrome(word, strlen(word))
语句中调用方法if
。
所以看起来应该是这样的
if (ispalindrome(word, strlen(word)) {
cout << word << " is a palindrome" << endl;
} else {
cout << word << " is not a palindrome" << endl;
}
此外,请保持与您的类型一致。 word
应该是char
数组,而不是string
。