进制转换(递归实现)
2015-11-16 14:23
204 查看
Time Limit: 1sec Memory Limit:256MB Description 输入一个非负的十进制整数,将其转为二进制. Input 输入的第一行是一个整数T,表示总共有T组数据. 接下来的T行,每行是一组数据,每组数据是一个待转换的十进制整数n(0<=n<2^31). Output 对于每个十进制数,输出其对应的二进制数,每个数占一行. 注意输出的二进制数不要有多余的前导0. Sample Input Copy sample input to clipboard 3 4 1 20 Sample Output 100 1 10100
此题为二进制用递归实现的标准算法。
#include <stdio.h> void base2(int n) { if (n == 1) { printf("%d", n); } else { base2(n / 2); printf("%d", n % 2); } } int main() { int n, i; scanf("%d", &i); for (int k = 0; k < i; k++) { scanf("%d", &n); base2(n); printf("\n");//注意不能在递归函数中换行! } return 0; }
相关文章推荐
- 在UIView上画圆圈、画直线的方法
- 说说Android应用的persistent属性
- Itti算法c代码
- linux c 信号量编程
- Android打开网络设置连接网络
- linux在某个文件目录下右击打开终端 的小工具安装
- phpexecl使用遇到的问题
- git stash clear 后,找回 stash 的代码
- iOS学习笔记40-GCD定时器的实现
- ASO是什么?AppStore搜索规则是什么?
- 开启技术博客之路
- Oracle 有关SQL性能优化
- 文件管理类NSFileManager常用操作
- Android超轻量下拉刷新、上拉加载更多控件,已完美适配ListView
- 英特尔 QSV 在 FFMPEG 中的使用(Windows)
- Pig初识
- 磁条卡磁道笔记(2)
- web.xml中<security-constraint>和四种认证类型
- HTTP学习——请求网页时返回的数字代表什么意思?
- Android百度地图导航SDK2.0 定位SDK6.0.5的导航参数设置方法