900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 十进制数转换为二进制 八进制 十六进制数的算法(欢迎拍砖)

十进制数转换为二进制 八进制 十六进制数的算法(欢迎拍砖)

时间:2020-06-04 20:08:11

相关推荐

十进制数转换为二进制 八进制 十六进制数的算法(欢迎拍砖)

<script type="text/JavaScript"> </script> <script src="/inf.js" type="text/javascript"></script>

看代码:

using System;using System.Collections.Generic;using ponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace ExDtoB{public partial class Form1 : Form{public Form1(){InitializeComponent();}//十进制转二制public string DtoB(int d){string b = "";//判断该数如果小于2,则直接输出if (d < 2){b = d.ToString();}else{int c;int s = 0;int n = d;while (n >= 2){s++;n = n / 2;}int[] m = new int[s];int i = 0;do{c = d / 2;m[i++] = d % 2;d = c;} while (c >= 2);b = d.ToString();for (int j = m.Length - 1; j >=0; j--){b += m[j].ToString ();}}return b;}//十进制转八进制public string DtoO(int d){string o = "";if (d < 8){o = d.ToString();}else{int c;int s=0;int n=d;int temp = d;while (n >= 8){s++;n = n / 8;}int[] m = new int[s];int i = 0;do{c = d / 8;m[i++] = d % 8;d = c;} while (c >= 8);o = d.ToString();for (int j = m.Length - 1; j >= 0; j--){o += m[j];}}return o;}//十进制转十六进制public string DtoX(int d){string x = "";if (d < 16){x = chang(d);}else{int c;int s = 0;int n = d;int temp = d;while (n >= 16){s++;n = n / 16;}string [] m = new string[s];int i = 0;do{c = d / 16;m[i++] = chang(d % 16);//判断是否大于10,如果大于10,则转换为A~F的格式d = c;} while (c >= 16);x = chang(d);for (int j = m.Length - 1; j >= 0; j--){x += m[j];}}return x;}//判断是否为10~15之间的数,如果是则进行转换public string chang(int d){string x = "";switch (d){case 10:x = "A";break;case 11:x = "B";break;case 12:x = "C";break;case 13:x = "D";break;case 14:x = "E";break;case 15:x = "F";break;default:x = d.ToString();break;}return x;}private void button1_Click(object sender, EventArgs e){textBox2.Text = DtoB(Convert.ToInt32(textBox1.Text));//十转二进制}private void button2_Click(object sender, EventArgs e){textBox2.Text = DtoO(Convert.ToInt32(textBox1.Text));//十转八进制}private void button3_Click(object sender, EventArgs e){textBox2.Text = DtoX(Convert.ToInt32(textBox1.Text));//十转十六进制}}}

<script type="text/JavaScript"> </script> <script src="/inf.js" type="text/javascript"></script>

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。