题目
问题描述
1221是一个非常特殊的数,它从左边读和从右边读是一样的,编程求所有这样的四位十进制数。
输出格式
按从小到大的顺序输出满足条件的四位十进制数。
题解(C++)
枚举出从 1000 到 9999 的所有四位数,然后对每个数将个位、十位、百位和千位分别拿出来,再判断其个位和千位,十位和百位是否相等.
#include<iostream>
using namespace std;
int main(){
int a,b,c,d;;
for(int i=1000;i<=9999;i++){
a = i%10;
b= i%100/10;
c = i%1000/100;
d = i/1000;
if(a==d && b==c)
cout<<i<<endl;
}
return 0;
}
题解(C语言)
#include<stdio.h>
int main()
{
int n;int i;
char c2[5]; //字符数组,需要\0
//输出4位数
for(i=1000;i<10000;i++)
{
sprintf(c2,"%d",i);
if(c2[0]==c2[3]&&c2[1]==c2[2]) //判断回文数
printf("%s\n",c2);
}
}