C语言每日一练- - -回文数

题目:

 

一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。

程序分析:

直接分别将个十千万位分别表示出来,然后依次判断个位是否与万位相同,十位是否与千位相同。

代码实现:

#include 
int main()
{
	int g,s,q,w,n;//个十千万位
	printf("请输入五位整数n(n>0):\n");
	scanf("%d",&n);
	if(n<=0&&n>99999)
	{
		printf("输出错误!");
	}
	w=n/10000;//得到万位
	q=(n%10000)/1000;//去掉万位后,得到千位
	s=(n%100)/10;去掉百位后,得到十位
	g=n%10;//得到个位
//	printf("w-%d\n",w);
//	printf("q-%d\n",q);
//	printf("s-%d\n",s);
//	printf("g-%d\n",g);
	if(g==w&&s==q)
	{
		printf("%d是回文数\n",n); 
	}
	else
	{
		printf("%d不是回文数\n",n);
	}
	return 0;
}

代码效果:

C语言每日一练- - -回文数_第1张图片

 C语言每日一练- - -回文数_第2张图片

 另一种方法:

#include
  
int main()
{
    int m, K, q, sum = 0;
    printf("请输入一个整数:");
    scanf("%d", &m);
    K = m;
    while (m)
    {
        q = k % 10;
        m = k / 10;
        sum = 10 * sum + q; //翻转原数
    }
    if (K == sum)
        printf("\n%d是回文数", sum);
    else
        printf("\n%d不是回文数", sum);
    return 0;
}

C语言每日一练- - -回文数_第3张图片

你可能感兴趣的:(C语言经典例题,c语言,开发语言,后端)