Quantcast
Channel: C++博客-所有随笔
Viewing all articles
Browse latest Browse all 7882

[导入]进制间转换

$
0
0

将十进制数转换为二进制数:

非递归算法:

 1 void translate(int n)  //将10进制转换为8位的二进制  
 2 {  
 3     int a[10];  
 4     int i,j;  
 5     i=0;  
 6     while(1)  
 7     {  
 8         a[i++]=n%2;  
 9         if(n/2==0) break;  
10         n/=2;  
11     }  
12     i--;  
13     for(j=1; j<8-i; j++)  
14     {  
15         printf("0");  
16     }  
17     for(j=i; j>=0; j--)  
18     {  
19         printf("%d",a[j]);  
20     }  
21 }  

递归算法:

1 void binary(unsigned long n)
2 {
3     int r;
4     r = n%2;
5     if(n >= 2)
6         binary(n / 2);
7     putchar('0' + r);
8     return;
9 }

 


文章来源:http://www.cnblogs.com/cpoint/archive/2013/10/01/3367328.html

oskernel 2013-12-11 22:51 发表评论

Viewing all articles
Browse latest Browse all 7882

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>