解题思路:
把要判断的数的每一位存入数组,首尾相同,且中间两个数也相同,输出结果;

参考代码:

#include <stdio.h>
#include <math.h>
int main()
{
    int    A[5];
    int    B = 95860, B1, i;

    while ( 1 )
    {
        B++;
        B1 = B;

        i = 0;
        while ( i != 5 )
        {
            A[i]    = B1 % 10;
            B1    /= 10;
            ++i;
        }

        if ( A[0] == A[4] && A[1] == A[3] )
        {
            printf( "%d", B );
            break;
        }
    }
    return(0);
}


点赞(10)
 

0.0分

9 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 4 条评论

新城已无旧少年 3年前 回复TA
#include<stdio.h>
int main()
{
	for(int i=95860;;i++)
	{
		if((i/1000)/10==(i%100)%10&&(i/1000)%10==(i%100)/10)
		{
			printf("%d",i);
			return 0;
		}
	}
}
浅梦 3年前 回复TA
#include <stdio.h>
#include <string.h>
#include <math.h>
int main()
{
   int n,s,i,v,a,b,c,d;
   for(i=95860;n!=1;i++)
   {
   	   a=i/10000;
   	   b=i/1000%10;
   	   c=i%100/10;
   	   d=i%10;
   	   if(a*10+b==d*10+c)
   	   {
   	   	n=1;
		  }
   }
   i-=1;
   v=(i-95859)/2;
   printf("%d %d",v,i);
}
123123 4年前 回复TA
nb
余哥 4年前 回复TA
nb