0075-寻找回文数

题目

寻找回文数
难度级别:A; 运行时间限制:1000ms; 运行空间限制:256000KB; 代码长度限制:2000000B
试题描述
输入一个正整数 n ,输出所有不超过 n 的回文数(一位数中没有回文数)。
输入
一个正整数 n(不超过 10000) 。
输出
若干个数,两两之间用一个空格分隔。
输入示例
110
输出示例
11 22 33 44 55 66 77 88 99 101

分析

  这道题和0069没有太大的本质性区别。只是这题需要判断很多个数。

代码

#include<bits/stdc++.h>
using namespace std;
bool flag;
int n,x,a,b;
int main()
{
	scanf("%d",&n);
	for(int i=10;i<=n;i++)//回文数从两位数开始。
	{
		x=i;
		while(x)//和0069一样。
		{
			a=x%10;
			x/=10;
			b=b*10+a;
		}
		if(b==i)//解决空格问题。
		{
			if(flag) printf(" ");
			flag=1;
			printf("%d",i);
		}
		b=0;//将刚刚用来存储反转完后值的变量清空。
	}
	return 0;
}
原文地址:https://www.cnblogs.com/DARTH-VADER-EMPIRE/p/9740000.html