10制转换成16进制

10制转换成16进制
10制转换成16进制
10制转换成16进制
10制转换成16进制
代码实现如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace _10to16
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public string From10To16(int d)
{
string hex = “”;
if (d < 16)
{
hex = BeginChange(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++] = BeginChange(d % 16);//判断是否大于10,如果大于10,则转换为A~F的格式
d = c;
} while (c >= 16);
hex = BeginChange(d);
for (int j = m.Length - 1; j >= 0; j–)
{
hex += m[j];
}
}
return hex;
}
//判断是否为10~15之间的数,如果是则进行转换
public string BeginChange(int d)
{
string hex = “”;
switch (d)
{
case 10:
hex = “A”;
break;
case 11:
hex = “B”;
break;
case 12:
hex = “C”;
break;
case 13:
hex = “D”;
break;
case 14:
hex = “E”;
break;
case 15:
hex = “F”;
break;
default:
hex = d.ToString();
break;
}
return hex;
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
int h;
h = Convert.ToInt32(textBox1.Text);
textBox2.Text = From10To16(h);
}
}
}