手工算 循环 除以16 取余数 即可。
例如,10进制 3246 转16进制:
3246/16 商 202 余 14 (十六进制 e)
202/16 商 12 余 10(十六进制 a)
12/16 商 0 余 12(十六进制 c)
写成 十六进制 cae
计算机 c 语言,用 %x 格式输出 整型变量的值 即可:
例如: printf("%x", 3246);
输出:cae
程序例子:
#include <stdioh>
int main( )
{
int a=3246;
//假定要转换的10进制数是 3246,赋给变量 a,
//或通过输入语句 scanf("%d",&a); 输入给 a
printf("Decimal: %d Hex: %#x ",a, a); // 输出 a 的10进制值 和 16进制值
return 0;
}
输出: Decimal: 3246 Hex: 0xcae
用 %#x 格式输出 ,数值前面自动添加前缀 0x,表示是 16进制。
若用 %x 格式输出, 则不加前缀,得: cae
10进制怎么转16进制的步骤有:
1首先,根据图中的这种格式,要转换的数字和除以16得到的商和余数被填在相应的位置。例如我们要将7692转换成十六进制,就将7692除以16,得到商为480,余数为12,将7692、480、12填到对应的地方,如图所示。
2然后,我们按照第2步做同样的 *** 作,一步一步的,把它写在格式里。直到最后的数字小于16,如图所示,最后是1,最后,再将1除以16,得到商为0,余数为1,当商为0时,就表示转换结束了余数。
3在十六进制中,十进制中的O~9仍然是十六进制中的O~9;而十进制中的10~15在十六进制中则表示为A~F。通过上述过程,我们依次得到12、0、14、1四个残差,在十六进制中为C、0、E、1。将C、0、E、1依次写到对应的余数旁边,如图所示,从下往上看,则依次是1、E、0、C。这就表示,十进制的7692就等于16进制中的1EOC,7692=1EOCH,在1EOC后面加个H,就表示它是16进制的数。
最简单的,不涉及算法的作法就是用printf的输出格式 %x 输出16进制
%x 输出小写的a、b、c、d、e、f %X输出大写的A、B、C、D、E、F
#include"stdioh"
int main()
{
int a;
printf("请输入一个10进制整数:" );
scanf( "%d", &a);
printf("该数转换为16进制数为: %X\n",a);
return 0;
}
详细的转化方法:
#include <stdioh>
int x[100];
int jzzh(int y,int ml)
{
int i,a;
i=ml;
x[0]=0;
for(a=1;;a++)
{
if(i!=0)
{
x[a]=i%y;
x[0]++;
}
else
break;
i=i/y;
}
return x[0];
}
int main()
{
long int y,ml;
long int a;
printf("请输入需要转换至进制数:");
scanf("%d",&y);
printf("请输入数字:");
scanf("%d",&ml);
jzzh(y,ml);
for(a=x[0];a>=1;a--)
{
if(x[a]>=10)
{
printf("%c",x[a]+55);
}
else
{
printf("%d",x[a]);
}
}
printf("\n");
return 0;
}
您好,我可以帮您了解如何将十进制转化成十六进制的方法。根据网上的信息¹²³,您可以按照以下步骤 *** 作:
1 将要转换的十进制数除以16,得到商和余数。
2 将商继续除以16,直到商为0为止,依次记下每次的余数。
3 从最后一个余数开始,依次写出所有的余数,就是转换后的十六进制数。
4 如果余数大于9,则用A-F来表示10-15。
例如,将120转换成十六进制:
120 / 16 = 7 8
7 / 16 = 0 7
从最后一个余数开始写出:78
所以120的十六进制表示为78。
源: 2023/3/6(1) 十六进制至十进制转换_百度百科 >
1、十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。
2、输入格式 ,输入包含一个非负整数a,表示要转换的数。0<=a<=2147483647。
3、输出格式,输出这个整数的16进制表示。
4、样例输出 ,1E:
#include<iostream>
#include<cstdio>
#include<string>
using namespace std;
int main() {
__int64 shi;scanf("%I64d",&shi);
if (shi<=15) {
string ans="";
if (shi<10)
ans += shi+'0';
else
ans += shi-10+'A';
for (int i=anslength()-1; i>=0; i--)
cout<<ans[i];
}
else {
string ans="";
do {
int tmp = shi%16;
if (tmp<10)
ans += tmp+'0';
else
ans += tmp-10+'A';
shi /= 16;
} while (shi>=16);
if (shi<10)
ans += shi+'0';
else
ans += shi-10+'A';
for (int i=anslength()-1; i>=0; i--)
cout<<ans[i];
}
return 0;
}
扩展资料
十六进制转换为十进制
十六进制数转十进制数方法:十六进制数按权展开,从十六进制数的右边第一个数开始,每一个乘以16的n次方,n从0开始,每次递增1。然后得出来的每个数相加即是十进制数。
参考资料来源:百度百科—十六进制转换
以上就是关于如何把十进制数转换为十六进制数全部的内容,包括:如何把十进制数转换为十六进制数、10进制转16进制的方法、用C语言编一个将十进制整数转化为16进制数的程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)