回文数:正反写的效果一样,正写等于反写。
提示:0-9一定为回文数,负数不是回文数。
涉及知识主要点:函数,循环。
主要方法:反转法。
<1>输入一个数判断是否为回文数(不含自定义函数)
#include<stdio.h>
int main()
{
int i,j=0;
scanf("%d",&i);
while(i!=0)
{
j=j*10+i%10;
i/=10;
}; //实现,输入一个数i,使i反转得到j
if(j==i)
{
printf("%d",i);
}
return 0;
}
<2>输入一个数判断是否为回文数(含自定义函数)
注:对于初学者,一定要掌握自定义函数的使用。
#include<stdio.h>
int judge(int n) //函数的定义,注:定义时句末没有“;”或int judge(n):在前面已经定义了函数的类型
{
int i,m=0;
i=n;
while(i!=0)
{
m=m*10+i%10;
i/=10;
}; //当i完成循环时,此时i=0
if(m==n) //必须确保输入值不变,故使用n=i
{
return n;//返回值为n
}
}
int main()
{
int judge(int n); //函数声明,声明时句末有“;”,在调用函数时要注意函数的类型。
int a,b;
scanf("%d",&a);
b=judge(a); //调用定义的judge函数 主调用函数 >调用int judge(int n) 在使用函数时,一定要有获取值,本题获取值为“b”.
printf("%d",b); //若在函数定义时 return 的返回值为m时,则此时b输出的则为其反转数值
}