题目描述:一个正整数,如果从左向 右读(称之为正序数)和从右向左读(称之为倒序数)是一样的,这样的数就叫回文数。输入两个整数m和n(m<n),输出区间[m,n]之间的回文数。
输入:输入两个正整数m和n,输入保证m<n。
输出:按从小到大的顺序,输出m到n之间的回文数,每个数后面有一个空格。
样例输入
100 200
样例输出
101 111 121 131 141 151 161 171 181 191
思路:将n从低位到高位逐位拆解,并存放入数组中;在将数组中元素乘对应位权,求和;将和与作比较,相同则输出;(逆序数求法类似)
注:输入数据不合法时,控制重新输入条件要与所要求的条件相反;尽量减少程序块中局部变量的定义和使用,不利于编写程序,定义变量建议在每个函数开始时定义,求和初值为0,求积初值为1;
代码:
#include <stdio.h>
#include <math.h>
int fun(int n){
int k,j=0,i=0,num=0,a[100];
k=n; //使用k去分解每位
while(k>0){ //从低位开始
本文介绍了如何用C语言找到两个正整数m和n之间(包括m和n)的所有回文数。回文数是指从左向右读和从右向左读都一样的数。通过逐位拆解数字并比较正序和倒序是否相等来判断是否为回文。代码示例中,给出了输入验证、回文数判断和输出回文数的完整流程。
订阅专栏 解锁全文
531

被折叠的 条评论
为什么被折叠?



