C语言 关来自于判断回文数的程序
的有关信息介绍如下:问题补充说明: m /。,; scanf("10 } if( sum == a) printf(" /= 10; m = m/,&a);/n"),貌似比这个复杂些; return 0; else printf("不是回文数\%d" int sum = 0,流程能看懂;,但是判断的思路不清楚。我看网上还有一些判断的程序;)#include<.h> m = a; while(m) { sum = sum*10 + m%10;是回文数; int m;n"}大神们给解释下这个程序,能对比解释下更好了;stdio;int main(void){ int a!\
原理:
任何一个数除以10的余数就是该数最后一位
任何一个数除以10的商就是排除掉最后一位后的数(因为c++两个整数相除结果还是整数)
所以,一个数1234就可以通过这种方法得到123和4
接下来对123进行同样的操作,就得到12和3
接下来得到1和2
接下来得到0和1
整个过程是个循环,当商不是0的时候就一直这么干
每次拿到一个余数,都用来构造新数,新数=新数*10+余数
所以经过四次循环后,我们得到新数4321,如果是回文,那么新数应该等于原数,否则,说明不据染白伯取永吃是回文。