|
发表于 2020-3-10 14:38:43
|
显示全部楼层
本帖最后由 liuzhengyuan 于 2020-3-10 15:46 编辑
补充一下如何判断(这是C++):
但C与C++差别不大
- #include<bits/stdc++.h>
- using namespace std;
- int milen(int a)
- {
- int len=0;
- while(a!=0)
- {
- a/=10;
- len++;
- }
- return len;
- }//求数为函数
- int main()
- {
- int number;
- cin>>number;//输入
-
- for(int i=1;i<=milen(number)/2;i++)//循环
- {
- int last=number % 10;//算出最后一位数 比如 778%10=8
- int first=number / pow(10,milen(number)-1);//算出第一位数,比如 778/100=7
-
- if(last!=first)
- {
- cout<<"不是回文";
- return 0;//return 0表示结束
- }
-
- number/=10;
- number-=first * pow(10,milen(number)-1);//把数位去掉,新来一组
- // 44344 下回就变成了 434 在下回 3.
-
- }
-
- cout<<"是回文";
- return 0;
- }
复制代码 |
|