十进制数转换为二进制,八进制,十六进制数的算法(欢迎拍砖)
<script type="text/JavaScript"> </script> <script src="http://a.alimama.cn/inf.js" type="text/javascript"></script>
看代码:
using System; using System.Collections.Generic; using System.ComponentModel; 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="http://a.alimama.cn/inf.js" type="text/javascript"></script>
十进制数转换为二进制,八进制,十六进制数的算法(欢迎拍砖)相关推荐
- C++十进制数转换为二进制表示的算法(附完整源码)
C++十进制数转换为二进制表示的算法 C++十进制数转换为二进制表示的算法完整源码(定义,实现,main函数测试) C++十进制数转换为二进制表示的算法完整源码(定义,实现,main函数测试) #in ...
- 利用栈实现把十进制数转换为二进制至十六进制之间的任一进制数并输出的功能。(第二版)
[实验题目内容] 保持计算机默认的十进制不变(要求不用C++流操纵符转换基数为八进制形式oct,不用C++流操纵符转换基数为十六进制形式hex,也不用setbase(base)函数将基数设置为base ...
- 利用栈实现把十进制数转换为二进制至十六进制之间的任一进制数并输出的功能。
利用栈实现把十进制数转换为二进制至十六进制之间的任一进制数并输出的功能. [实验题目内容] [实验环境](使用的软件):VS - 2010 [项目设计源代码] [项目测试运行结果截图] [实验题目内容 ...
- Java中实现十进制数转换为二进制的几种办法
Java中实现十进制数转换为二进制 第一种:除基倒取余法 这是最符合我们平时的数学逻辑思维的,即输入一个十进制数n,每次用n除以2,把余数记下来,再用商去除以2...依次循环,直到商为0结束,把余数倒 ...
- Java中实现十进制数转换为二进制
Java中实现十进制数转换为二进制 第一种:除基倒取余法 这是最符合我们平时的数学逻辑思维的,即输入一个十进制数n,每次用n除以2,把余数记下来,再用商去除以2-依次循环,直到商为0结束,把余数倒着依 ...
- 栈的应用--数制转换(十进制数转换为二进制,八进制,十六进制)
#include<stdio.h> #include<stdlib.h> #define MAXSIZE 1024 typedef int ElemType;typedef s ...
- 栈的应用--数制转换(十进制数转换为二进制、八进制、十六进制)
结果图: 代码如下: #include<stdio.h> #include<stdlib.h> #define ERROR 0 #define OK 1 typedef int ...
- Python | 不使用库函数将十进制数转换为二进制
Given a decimal number and we have to convert it into binary without using library function. 给定一个十进制 ...
- 数制转换,使用按权展开法将二进制数转换为十进制数,使用短除法除2取余计算十进制数转换为二进制数
1:数制转换 1.1 问题 1)请将下列数字转换为十进制数: (110010011111)2 .(10110101110)2 2)请将下列十进制数转换为二进制: 156.2608.1043 1.2 方 ...
最新文章
- SSM登陆拦截器实现
- 一级域名和二级域名的区别是什么?作用怎样?
- 腾讯副总裁姚星:腾讯AI Lab将致力打造通往AGI之路
- UriComponentsBuilder和UriComponents url编码
- brew 安装mysql5.6_MacOS 10.14安装和brew更新后无法安装mysql gem
- MySQL设置或修改系统变量的几种方法
- 关于 pip安装的可能错误的排除
- 【chrome插件】web版微信接入图灵机器人API实现自动回复
- WorldWind学习系列六:渲染过程解析篇
- maven整合ssh框架笔记
- 2021-2027全球与中国下一代测序数据分析市场现状及未来发展趋势
- java毕业设计_基于java的毕业设计
- 7628刷breed_H大的最新版Breed不死u-boot
- Apache DolphinScheduler 2.X保姆级源码解析
- 天行健---宇宙的生与死
- linux统计文本每列的最大字符,Linux 文本处理,文本工具,查看,分析,统计文本文件,grep,正则表达式...
- 3 继续测试一下 esp_tunnel 用 racoon协商 用setkey设置 spd
- 如何使用node.js后端框架中的egg.js框架
- C/C++程序员工作面试的秘密
- 《06》个人博客不完整版
热门文章
- 解决vimdiff ‘E97: Cannot create diffs‘错误的一种方法
- 学习tensorflow之mac上安装tensorflow
- 判断ip地址是否在同一网段
- vue+vant图片上传压缩图片大小
- 计算机社团活动教学计划,趣味科学社团教学计划记录、总结.doc
- 第九章-项目资源管理
- 基于bim技术的应用软件有?哪些提高bim工作效率的revit插件
- BIM用C语言编程,实现BIM技术的三个重要方面是()。A.BIM的建立B.BIM的应用C.BIM的管理D.BIM的粒度E.BIM的概念...
- 《网络渗透检测第一章 信息收集》
- 关于《半反去雾算法》一文的四宗罪。