C语言:编制程序,输入一个位数不超过五位的正整数,判断其是否为回文数,如果是输出“YES”,

不是则输出“NO”。... 不是则输出“NO”。 展开
 我来答
百度网友3b5a5d8
2019-03-07 · TA获得超过1229个赞
知道大有可为答主
回答量:1279
采纳率:83%
帮助的人:135万
展开全部

#include <stdio.h>

int main(int argc, char const *argv[])
{
int n = 0, n1 = 0;
int i = 0, j = 0;
char buf[6] = {0};

while(1)
{
scanf("%d",&n);
if(n <= 0 || n >= 100000)
printf("Error is n,pls try again.\n");
else
break;
}

n1 = n;
while(n1)
{
buf[i] = n1 % 10;
n1 /= 10 ;
i++;
  }

  while(i--)
  {
  n1 *= 10;
  n1 += buf[j];
  j ++;
  } 

  printf("n: %d n1: %d\n", n, n1);
  if(n == n1)
  printf("YES\n");
  else
  printf("NO\n");

return 0;
}
linjunlzy
2019-03-07 · TA获得超过1319个赞
知道小有建树答主
回答量:668
采纳率:82%
帮助的人:337万
展开全部
把数字当作字符串读入,然后用这个函数就行了。
int ishw(char *p)
{
if(*p == '\0')
return 1;
char *q=p;
while(*q!='\0')
q++;
if(*p!=*--q)
return 0;
else
{
*q='\0';
return ishw(p+1);
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式