首页 > 编程语言 > 详细

C++之判别回文数

时间:2020-04-17 17:16:54      阅读:75      评论:0      收藏:0      [点我收藏+]

当我们学习C++时经常会遇到让我们判断一个字符串是不是回文字符串的问题,下面我将给大家展示如何判断。

回文字符串的意思是从前往后读和从后往前读结果都是一样的,所以我们可以将字符串转换为字符来进行判断。

 1 #include<iostream>
 2 using namespace std;
 3 int main()
 4 {
 5     string str;
 6     cout<<"请输入一个字符串:";
 7     cin>>str;
 8     int sum=0;
 9     int a=str.length();
10     if(a==0)
11     {
12         cout<<"字符串是空串!"<<endl;
13     }
14     else if(str.length()%2!=0)
15     {
16         for(int i=0; i<(a-1)/2; i++)
17         {
18             if(str[i]!=str[a-1-i])
19             {
20                 cout<<"0……该字符串不是回文串!"<<endl;
21                 break;
22             }
23             else
24                 sum++;
25         }
26         if(sum==(a-1)/2)
27             cout<<"1……该字符串是回文串!"<<endl;
28     }
29     else
30     {
31         for(int i=0; i<a/2; i++)
32         {
33             if(str[i]!=str[a-1-i])
34             {
35                 cout<<"0……该字符串不是回文串!"<<endl;
36                 break;
37             }
38             else
39                 sum++;
40         }
41         if(sum==a/2)
42             cout<<"1……该字符串是回文串!"<<endl;
43     }
44     return 0;
45 }

我判别的方式是先判断该字符串是否是空串,如果不是空串就接着判断字符串长度是奇数还是偶数,然后分别判断。

这道题的思路还是很明确的,希望能帮到大家,如果对大家有帮助希望能收藏或关注,谢谢大家。

C++之判别回文数

原文:https://www.cnblogs.com/lcy-4/p/12720980.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!