c#进制相互转换代码

各进制之间整数转换

 
  
1 // 十进制转二进制
2   Console.WriteLine(Convert.ToString( 69 , 2 ));
3 // 十进制转八进制
4 Console.WriteLine(Convert.ToString( 69 , 8 ));
5 // 十进制转十六进制
6 Console.WriteLine(Convert.ToString( 69 , 16 ));
7
8 // 二进制转十进制
9 Console.WriteLine(Convert.ToInt32(” 100111101 ″, 2 ));
10 // 八进制转十进制
11 Console.WriteLine(Convert.ToInt32(” 76 ″, 8 ));
12 // 十六进制转十进制
13 Console.WriteLine(Convert.ToInt32(”FF”, 16 ));

 十进制向任意进制转换(包括小数)

 

 
  
1 /// <summary>
2 /// 将十进制数(包括小数)转换成任意进制
3 /// </summary>
4 /// <param name="DB"> 将要转换的数 </param>
5 /// <param name="Type"> 转到的进制类型,例如:8 </param>
6 /// <returns> 字符串的结果 </returns>
7   public static string tenToAny( double DB, int Type)
8 {
9 string H = " 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ " ;
10 long D;
11 double B;
12 string tempD = "" , tempB = "" ;
13 D = ( long )DB;
14 B = DB - D;
15 if (D == 0 )
16 {
17 tempD = " 0 " ;
18 }
19 while (D != 0 )
20 {
21 tempD = H[((( int )D % Type))] + tempD;
22 D = D / Type;
23 }
24 for ( int i = 0 ; i < 7 ; i ++ )
25 {
26 if (B == 0 )
27 {
28 break ;
29 }
30 tempB += H[(( int )(B * Type))];
31 B = B * Type - ( int )(B * Type);
32 }
33 if (tempB == "" )
34 {
35 return tempD;
36 }
37 else
38 {
39 return tempD + " . " + tempB;
40 }
41 }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值