C语言回文数猜想.docx
《C语言回文数猜想.docx》由会员分享,可在线阅读,更多相关《C语言回文数猜想.docx(3页珍藏版)》请在三一办公上搜索。
1、C语言回文数猜想2.7.1.1 练习1 回文数的猜想 1 2 3 输入一个数 一个数,加上是这个数的倒序数,得出结果 判断是否为回文数,是就退出,否则返回第2步骤 回文数:1336331、9559 典型:输入1735 1753+3571=5324 5324+4235=9559 9559就是一个回文数 程序解答过程: 1 2 设计出各函数功能,便于调用 编码,解答 各函数功能: 输入数据:int input(void) 对数据取逆序:int reverse(int data) 判断回文数:int ispalin(int data) 溢出判断: int isover(int data /palin
2、.c #include int input(void) int data=-1;/防止赋值失败? for(;) return data; scanf(%d,&data); if(data=10)/使得输入的数字不小于10 break; scanf(%*n);/取得除了换行n之外的所有字符,抛掉 scanf(%*c);/抛掉换行n int reverse(int data) int ispalin(int data) int isover(int data) int main int data=input; int i; for(i=0;!isover(data);data+=reverse(d
3、ata) printf(Can not find Palin!n); return 0; if(!ispalin(data) else printf(Palin:%dn,data); return 0; printf(%d:%d+%d=%dn,+i,data,reverse(data),data+reverse(data); return data=0|reverse(data)0;data=data/10)/取得data的的逆序 res=res*10+data%10;/data%10取得data最后一位数字 return res; 知识:unsigned int:232-1 int : 231-1 超过了最大值会越界,越界的数会变成负数 知识盲点: 1) scanf(“%*cn”); 2) scanf(“%*c”); %*c :读取出来,再扔掉,即是把缓冲区清除掉,c是格式控制符,控制把字符类型的输入清除 n 输入的字符除了换行n之外的集合 1的解析:将所有不等于n的字符扔掉 2的解析:将输入的一个字符去掉
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 回文 猜想
链接地址:https://www.31ppt.com/p-3060526.html