将十进制转换为十六进制和八进制 [英] Converting Decimal to Hexadecimal and Octal

查看:128
本文介绍了将十进制转换为十六进制和八进制的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

显示如何在C中写入一个常量,其十进制值为65,如

a。一个十六进制常量

65/16 = 1 r1

1/16 = 0 r1

十六进制常量= 11


b。八进制常数(单位为C)

65/8 = 8 r1

8/8 = 1 r0

1/8 = 0 r1
八进制常数= 101



这是在C中转换常量的正确方法吗?

$ b

解决方案

可能我误解了这些问题,但是好像你被问到C中是如何表示十六进制和八进制常量的,而不是如何实现一个算法将十进制数转换为十六进制数和十进制数。



如果是这样的话:

0x或0X

十进制数由前面的0表示

  int hex = 0x41; 
int oct = 0101;

当然,您可以通过以十进制打印我们的值来验证这一点:

  printf(%d\\\
,hex);
printf(%d\\\
,oct);


Show how to write a constant in C, whose decimal value is 65 as

a. a hexadecimal constant
65/16 = 1 r1
1/16 = 0 r1
Hexadecimal constant = 11

b. an octal constant (in C)
65/8 = 8 r1
8/8 = 1 r0
1/8 = 0 r1 Octal constant = 101

Is this the right way to convert constants in C?

解决方案

Maybe I am misunderstanding the questions, but it seems like you are being asked how hex and oct constants are represented in C, not how to implement an algorithm to convert dec to hex and oct.

If that is the case:

hex numbers are represented by a preceding 0x or 0X

oct numbers are represented by a preceding 0

int hex = 0x41;
int oct = 0101;

Of course, you can verify this by printing our the values in decimal:

printf("%d\n", hex);
printf("%d\n", oct);

这篇关于将十进制转换为十六进制和八进制的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆