用递归的方法,判断某个字符串是否为回文

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用递归的方法,判断某个字符串是否为回文

回文,即一个字符串正读倒读都一样,如abcdcba

递归,就是重复使用同一种方法。

在判断字符串是否是回文的时候,如果要采用递归,首先要分析出重复做的是什么事情

这里很明显,要重复判断两端的字符是不是相等的,直到剩下最后一个或者0个字符的时候

1 #include "stdafx.h"

2 #include "stdio.h"

3 #include "string"

4using namespace std;

5

6int fun(char *ptr,int len)

7 {

8if (len==1||len==0) return1;

9if (ptr[0]==ptr[len-1])

10 {

11 ptr++;

12 fun(ptr,len-2);

13 }

14else return0;

15 }

16

17

18

19

20int _tmain(int argc, _TCHAR* argv[])

21 {

22char test[20]={0};

23 printf("please input the test string\n");

24 scanf("%s",test);

25

26if (fun(test,strlen(test))) printf("yes! it is\n");

27else

28 printf("no! it is not\n");

29return0;

30 }

相关文档
最新文档