鱼C论坛

 找回密码
 立即注册
查看: 2733|回复: 9

十六进制与十进制转换

[复制链接]
发表于 2011-9-23 18:25:05 | 显示全部楼层 |阅读模式
1鱼币
十六进制和十进制相互转换...本人较笨...望大家回答的详细点...最好多点例题...  :lol 


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-9-23 18:25:06 | 显示全部楼层
#include<iostream>
using namespace std;

void TenToSixteen(int n)
{
if(n==0)return ;
TenToSixteen(n/16);
char ch;
if(n%16<10)ch='0'+(n%16);
else ch='a'+(n%16)-10;
printf("%c",ch);
}

int SixteenToTen(char s[])
{
int len=strlen(s);
int t,n=0;
for( int i=0;i<len;i++)
{
if(s[i]>='0'&&s[i]<='9')t=s[i]-'0';
else t=s[i]-'a'+10;
n=n*16+t;
}
return n;
}

int main()
{
int n;
char s[10];
scanf("%d",&n);
TenToSixteen(n);
printf("\n");
scanf("%s",s);
printf("%d\n",SixteenToTen(s));
system("pause");
return 0;

}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2011-9-25 19:42:29 | 显示全部楼层
你给我写代码干什么...我要过程和算法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2011-9-25 20:35:25 | 显示全部楼层
代码就是算法的直接实现啊,直接看代码应该比看算法还好些啊,自己觉得需要改进那自己就优化呗!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-10-5 15:49:08 | 显示全部楼层
去四位数然然后乘以2的n次方
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-12-1 00:45:46 From FishC Mobile | 显示全部楼层
你可以这么想 我们一般用的是十进制 那么我们从0开始加,加到9就为一轮 再加就转轮10.11.12....就是把最右边的重新置0同时向(十位)坐左边进一     而16位的话abcdef代替10.11.12.13.14.15 到了十六再进
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-12-1 00:49:47 From FishC Mobile | 显示全部楼层
了解了之后那么进制转换也容易了  你把    对应的位数乘上位值 的和  就是数值了,再除以对应的进制是多少位的得出的就是了 举个栗子
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-12-1 00:58:12 From FishC Mobile | 显示全部楼层
32这个数(为十进制的)  他最右边的数位(好像之前写反了?)为2  左边的数位为3  2对应的数值为10的0次方即1   3对应的数值为10的1次方  所以这个数字的值为32(因为我们默认的基数是10  如果是16得出的是20)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-2-16 13:12:27 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-2-16 16:02:38 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-27 22:24

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表