C#中各进制之间的转换

     C#中进制间的转换要借助Convert类的两个方法:

              1.ToString(int32 value, int32 base):将 32 位带符号整数的值转换为其指定基的等效字符串表示形式。简单的理解就是将base指定的值(2,8,10,16)它们代表进制,转换成相对应的值。

             2.ToInt32(string value,int32 base):将指定基数的数字的字符串表示形式转换为等效的 32 位有符号整数。总之与上面讲到ToString方法完全相反就是啦!

下面放几小示例演示一下:

1: Tostring方法,将十进制转换成二,八,十,十六进制

 Console.Write("请输入要转换的值:");
            int num = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Value:" + num.ToString() + " 转换为二进制 " + Convert.ToString(num, 2));
            Console.WriteLine("Value:" + num.ToString() + " 转换为八进制 " + Convert.ToString(num, 8));
            Console.WriteLine("Value:" + num.ToString() + " 转换为十进制 " + Convert.ToString(num, 10));
            Console.WriteLine("Value:" + num.ToString() + " 转换为十六进制 " + Convert.ToString(num, 16));

过程很简单就输入一个值,将它依次转换成2,8,10,16进制的值,不多讲解。

2: ToInt32方法,将2,8,10,16进制转换成10进制

Console.WriteLine("2,8,10,16进制与10进制间相互转换,按Q键退出");
            Console.Write("请输入二进制值:");
            string inputValue = Console.ReadLine();
            while (inputValue.ToUpper() != "Q")
                {
                Console.WriteLine("Value:" + inputValue + " 二进制转换为十进制 " + Convert.ToInt32(inputValue, 2));

                Console.Write("请输入八进制值:");
                inputValue = Console.ReadLine();
                if (inputValue == "q") break;
                Console.WriteLine("Value:" + inputValue + " 八进制转换为十进制 " + Convert.ToInt32(inputValue, 8));

                Console.Write("请输入十进制值:");
                inputValue = Console.ReadLine();
                if (inputValue == "q") break;
                Console.WriteLine("Value:" + inputValue + " 十进制转换为十进制 " + Convert.ToInt32(inputValue, 10));

                Console.Write("请输入十六进制值:");
                inputValue = Console.ReadLine();
                if (inputValue == "q") break;
                Console.WriteLine("Value:" + inputValue + " 十六进制转换为十进制 " + Convert.ToInt32(inputValue, 16));

                Console.Write("请输入二进制值:");
                inputValue = Console.ReadLine();
                }
            Console.WriteLine("程序已经退出........");

在控制台输入提示的进制值,做一个相应的2,8,10,16进制的转换,输入Q退出程序,也不难理解

3.其它进制的相互转换(比如:二进制转换成八进制)

思路:用十进制做中转,来实现二进制与八进制的转换,还是用实例来演示说明

            string stringBinary = "10000";
            int intTen = Convert.ToInt32(stringBinary, 2);//16
            string stringOctal = Convert.ToString(intTen,8);//20
            Console.WriteLine("二进制:"+stringBinary+"转为八进制:"+stringOctal);

结束:进制转换利用的就是Convert的两个方法来实现互转,蛮好的,简单且方便。就写到这

  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值