
帮忙编写一个C++程序,用递归函数将一个整形数逆序,编写主函数判断它是否是回数?例12321是回数,123不是
2个回答
展开全部
#include<iostream>
using namespace std;
long reverse(long number){
if(number/10 == 0)
return number;
else {
long temp = number,sum = number%10;
while(temp/10 != 0){
sum *= 10;
temp /= 10;
}
return sum+reverse(number/10);
}
}
int main(){
long num = 123321;
cout<<num<<endl;
cout<<"After Reverse!"<<endl;
cout<<reverse(num)<<endl;
if(num == reverse(num))
cout<<"Palindrome Number!"<<endl;
else cout<<"Not A Palindrome Number!"<<endl;
system("pause");
return 0;
}
回文数判断C++递归版本,VS2008下调试通过
using namespace std;
long reverse(long number){
if(number/10 == 0)
return number;
else {
long temp = number,sum = number%10;
while(temp/10 != 0){
sum *= 10;
temp /= 10;
}
return sum+reverse(number/10);
}
}
int main(){
long num = 123321;
cout<<num<<endl;
cout<<"After Reverse!"<<endl;
cout<<reverse(num)<<endl;
if(num == reverse(num))
cout<<"Palindrome Number!"<<endl;
else cout<<"Not A Palindrome Number!"<<endl;
system("pause");
return 0;
}
回文数判断C++递归版本,VS2008下调试通过
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<iostream.h>
int judge(int a)
{
int m=0;
while(a>9)
{
m=m*10+a%10;
a/=10;
}
m=m*10+a;
return m;
}
int main()
{
int a,m;
cin>>a;
m=judge(a);
cout<<"逆序数是"<<m<<endl;
if(m==a) cout<<"是回文数"<<endl;
system("pause ");
return 1;
}
int judge(int a)
{
int m=0;
while(a>9)
{
m=m*10+a%10;
a/=10;
}
m=m*10+a;
return m;
}
int main()
{
int a,m;
cin>>a;
m=judge(a);
cout<<"逆序数是"<<m<<endl;
if(m==a) cout<<"是回文数"<<endl;
system("pause ");
return 1;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询