printd函数的编写(递归)
2016-01-31 05:12
218 查看
将一个数字作为字符串打印的情况:数字是以反序生成的,低位数字先于高位数字生成,它们必须以此相反的次序打印。 解决该问题的方法有两种。第一种方法是将生成的各个数字依次存储到一个数组中,然后以相反的次序打印他们,这种方式与前面itoa函数的处理方式相似。另一种方法是使用递归,如用printd首先调用它自身打印前面的(高位)数字,然后再打印后面的数字。
#include <stdio.h> void printd(int n) { if(n < 0) { putchar('-'); n = -n; } if(n / 10 ) printd(n / 10); putchar(n % 10 + '0'); } int main() { printd(-3219); return 0; }
相关文章推荐
- 51Nod1119机器人走方格(费马儿定理+快速幂函数) 好题
- LeetCode_46 Permutations
- EXT心得--并非所有的items配置对象都属于EXT的内置类
- Nose+Jekins进行测试和持续集成
- 8633回文划分
- iOS之UI--辉光动画
- EXT经验--查询EditorGridPanel的tbar的默认配置对象
- Leetcode 48. Rotate Image
- 51Nod(1256乘法逆元逆元)
- 动画交互设计与技术实现
- Leetcode 90. Subsets II
- set常见操作:
- 【jQuery基础学习】04 jQuery中的表格操作及cookie插件的使用
- CC150 Bit manipulation
- INNO 仿有道云安装界面
- Redis
- redis 链表操作
- 深夜脑洞,写了一个可以推算火车票身份证号码的小程序
- composer 详解
- 蜗牛爱课- CGAffineTransformMakeRotation 实现一张图片的自动旋转