【5IC-1】输入一个正整数判别它是否为一回文数

 时间:2026-02-12 05:27:40

1、程序如下:

#include<iostream.h>

int f(int i)

{

int j,m=1; 

for(j=1;j<=i;j++)m=m*10;

return m; 

int main()

{

int n,m,i,j,flage=1;

int p[100]; 

cin>>n;

m=n; 

for(i=1;1;i++){

m=m/10;

if(m==0)break; 

}

for(j=1,p[0]=0;j<=i;j++)p[j]=(n-n/f(j)*f(j)-p[j-1])/f(j-1);

for(j=1;j<=i;j++)if(p[j]!=p[i-j+1])flage=0; 

if(flage==1)cout<<"是回文数"<<endl;

else cout<<"不是回文数"<<endl; 

【5IC-1】输入一个正整数判别它是否为一回文数

2、运行结果:

【5IC-1】输入一个正整数判别它是否为一回文数

1、对于任意输入的数字我们首先要判断数位:

for(i=1;1;i++){

m=m/10;

if(m==0)break; 

}

这段代码运行后,i的值即为数字位数。

【5IC-1】输入一个正整数判别它是否为一回文数

2、然后需要将每位数单独提取出来:

for(j=1,p[0]=0;j<=i;j++)p[j]=(n-n/f(j)*f(j)-p[j-1])/f(j-1);

【5IC-1】输入一个正整数判别它是否为一回文数

3、这里的自定义函数是用来计算10的i次方的:

int f(int i)

{

int j,m=1; 

for(j=1;j<=i;j++)m=m*10;

return m; 

【5IC-1】输入一个正整数判别它是否为一回文数

4、最后我们比较对应数位的数字是否相同:

for(j=1;j<=i;j++)if(p[j]!=p[i-j+1])flage=0; 

if(flage==1)cout<<"是回文数"<<endl;

else cout<<"不是回文数"<<endl; 

【5IC-1】输入一个正整数判别它是否为一回文数

  • VB如何添加高级控件
  • 想知道冲量公式是什么
  • C++创建一个CPU类
  • Android Studio界面的简单介绍
  • java如何将文件移动到另外一个目录
  • 热门搜索
    检举信怎么写 婺源自助游攻略 chm文件怎么打开 怎么去死皮 胃火大怎么调理 部落冲突攻略 鼻塞怎么通 夕字五笔怎么打 金锁记简介 电子狗怎么升级