问题及代码:
/*
* Copyright (c) 2014, 烟台大学计算机学院
* All rights reserved.
* 文件名称:Project.cpp
* 作 者:chenqin40.
* 完成日期:2014年11月10日
* 版 本 号:v1.0
*
* 问题描述:编制isPalindrome(),用于判断参数是否是回文数——回文数,即从前往后读和从后往前读都一样的数,如121是回文数,而1231、123都不是回文数。请编制isPalindrome(函数,在下面代码的基础上补充相关的部分,实现要求的功能。
* 程序输入:一个整数
* 程序输出:一个整数
*/
#include <iostream>
using namespace std;
bool isPalindrome(int n);
int reverse(int);
int main()
{
int m;
cin>>m;
if(isPalindrome(m))
cout<<m<<"是回文数,噢耶!"<<endl;
else
cout<<m<<"不是回文数。回文有什么好!"<<endl;
return 0;
}
bool isPalindrome(int n)
{
bool palindrome=false; //先默认不是回文数
if(reverse(n)==n)
palindrome=true;
return palindrome;
}
int reverse(int x)
{
int m=0;
while(x>0)
{
m=m*10+x%10;
x=x/10;
}
return m;
}
运行结果:
知识点总结:这个程序需要先默认不是回文,再通过循环语句来实现输出
学习心得:一开始很没有头绪,但经过同学的指导,终于理解了,所以,实在不懂,就要问。