C语言:查找回文数

题目描述

回文数是一种特殊的数,从左边读和从右边读是一样的,比如123321就是一个回文数。现在给定一个正整数n(n≤54),编程求出一个回文数,要求该回文数的各位数字之和等于n,且该回文数大于10000,小于等于99999。如果有多个满足条件的回文数,输出最小的这个;如果没有满足条件的回文数,输出"Not found"。

输入输出格式

输入格式

一个正整数n
输出格式

按要求找到的回文数,如果没找到,输出"Not found"

完整代码

复制代码
#include <stdio.h>
#include <math.h>
#include <string.h>
int huiwen(int n) //判断回文数
{
	int t=n;
	int sum=0;
	while(t)
	{
		sum=sum*10+t%10;
		t=t/10;
	}
	if(sum==n)
	{
		return 1;
	}else{
		return 0;
	}
}

int sum(int n) //各位数字求和
{
	int t=n;
	int end=0;
	while(t)
	{
		end+=t%10;
		t/=10;
	}
	return end;
} 
int main()
{
	int n;
	scanf("%d",&n);
  	int flag=0;
	if(n>0&&n<=54)
	{
		int i=0;
		for(i=10000;i<=99999;i++)
		{
			if((huiwen(i)==1)&&(sum(i)==n))
			{
				printf("%d",i);
              	flag=1;
				break;
			}
		}
	}
  	if(flag==0)
    {
      printf("Not found");
    }
	return 0;
}
相关推荐
变量未定义~14 小时前
星际争霸、宝石塔的亮度差异、寻找食物储量
算法
YL2004042614 小时前
027合并两个有序链表
java·数据结构·算法·链表
维诺菌14 小时前
claude code安装
java·开发语言·ai编程·calude
谙弆悕博士14 小时前
快速学C语言—— 第0章:C语言简介
c语言·开发语言·经验分享·笔记·程序人生·课程设计·学习方法
顶点多余14 小时前
自定义协议、序列化、反序列化实现
java·linux·开发语言·c++·tcp/ip
风味蘑菇干14 小时前
使用接口定义规范,实现类完成具体逻辑。
java·开发语言
MATLAB代码顾问14 小时前
【智能优化】无穷优化算法(INFO)原理与Python实现
开发语言·python·算法
炽烈小老头14 小时前
【每天学习一点算法 2026/05/10】合并K个排序链表
学习·算法·链表
2401_8332693014 小时前
Java多线程:从入门到进阶
java·开发语言
z2005093014 小时前
C++中的右值引用
开发语言·c++