c语言练习30——判断一个5位数是否回文数

#include<stdio.h>
#include<stdlib.h>
/*题目:判断一个五位数是否为回文数。*/
int main(){
int a,a1,a2,a3,a4,a5;
while(1){
printf("请输入一个5位数:");
scanf("%d",&a);
a1=a%10;
a2=a/10%10;
a3=a/100%10;
a4=a/1000%10;
a5=a/10000;
if(a1==a5&&a2==a4)
printf("%d是回文数\n",a);
else 
printf("%d不是回文数\n",a);
}
return 0;
}

扩展一下

#include<stdio.h>
#include<stdlib.h>
//题目:判断一个数是否为回文数。
int main(){
int i,j,m,k;
char a[100];
while(1){
printf("请输入一个数字:");
for(i=0;i<100;i++){
scanf("%c",&a[i]);
if(a[i]=='\n')
break;}
if(i==1||i%2==0)
printf("该数长度不符,不是回文数");
else {
m=(i+1)/2-1;
k=0;
for(j=1;j<=m;j++)
if(a[m-j]!=a[m+j]){
k=1;
break;}
if(k==1)
printf("该数不是回文数");
else 
printf("该数是回文数");
}
printf("\n________________________________\n");
}
return 0;
}

 

posted @ 2019-08-26 23:16  狗狗王  阅读(2052)  评论(0编辑  收藏  举报