BASIC-8 回文数

题目
问题描述
    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);
       }    
} 

猜你喜欢

转载自blog.csdn.net/qq_42403069/article/details/85929046