首页 > OOP语言 > C语言 > 正文

C语言中判断一个数是否是回文数
2014-05-11 00:00:00   来源:www.bianceng.cn   评论:0 点击:

暂时无描述信息

注:回文数即数字顺着和反着是同一个数!

看了郝斌老师的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("请输入您需要判断的数字:\n");

scanf("%d",&val);

m = val;

/*这一块是核心代码块:

由sum 不断的从输入的数中获取各位、十位、百位……为了得到反数,需要*10并加上下一位作为个位

sum每更新一次,m值去掉最后一位同时更新

*/

while (m)

{

 sum = sum*10 + m%10;

 m /= 10;

}

if (sum == val)

 printf("Yes!\n");

else

 printf("No!\n");

return 0;

}

试数过程(纯粹的体力活)

/*

判断是否是回文数的试数过程

这里只测试核心块

*/

1234

1 -> 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;

false

12321

1 -> 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

查看本栏目更多精彩内容:http://www.bianceng.cn/Programming/C/

相关热词搜索:

上一篇:Obj-C的函数命名方式简介
下一篇:C操作符练习

分享到: 收藏