首页 / 软件开发 / C语言 / C语言中判断一个数是否是回文数
C语言中判断一个数是否是回文数2014-05-11 csdn博客 myCafe_XuoaiJ注:回文数即数字顺着和反着是同一个数!看了郝斌老师的C语言视频,虽然还只看了80多个,但是还是有一些体会,编程应该养成良好的编程风格,至少到现 在为止写的这些小程序都应该有下面这样一个过程:1,流程;(知道程序是按照怎样的顺序运行的)2,功能;(理解程序的作用)3,试数;(我个人简单的理解为测试过程,把自己当作计算机去执行程序)/*2012年4月20日 10:36:23判断一个数是否是回文数*/#include <stdio.h>int main(void){int val; //存放待判断的数据int m;int sum = 0;printf("请输入您需要判断的数字:
");scanf("%d",&val);m = val;/*这一块是核心代码块:由sum 不断的从输入的数中获取各位、十位、百位……为了得到反数,需要*10并加上下一位作为个位sum每更新一次,m值去掉最后一位同时更新*/while (m){ sum = sum*10 + m%10; m /= 10;}if (sum == val) printf("Yes!
");else printf("No!
");return 0;}试数过程(纯粹的体力活)/*判断是否是回文数的试数过程这里只测试核心块*/12341 -> m = val = 1234; sum = 0 + 1234%10 = 4; m = 1234/10 =123;2 -> m = 123; sum = 40 + 123%10 = 40+3 = 43; m = 123/10 = 12;3 -> m = 12; sum = 430 + 12%10 = 432; m = 12/10 = 1;4 -> m = 1; sum = 4320 + 1%10 = 4321; m = 1/10 = 0;false123211 -> m = val = 12321; sum = 0 + 12321%10 = 1; m = 12321/10 = 1232;2 -> m = 1232; sum = 10 + 1232%10 = 12; m = 1232/10 = 123;3 -> m = 123; sum = 120 + 123%10 = 123; m = 123/10 = 12;4 -> m = 12; sum = 1230 + 12%10 = 1232; m = 12/10 = 1;5 -> m = 1; sum = 12320 + 1%10 = 12321; m = 1/10 = 0;false