C语言中如何把数字用八进制和十六进制表示出来,要用程序写出来

Python017

C语言中如何把数字用八进制和十六进制表示出来,要用程序写出来,第1张

八进制字面常量记写法以0开头,十六进制以0x开头,于整数类型存储,可以调用标准输出函数分别用转换说明%O/%o、%X/%x输出它们的值表示。

int

value

=

10

printf("%d

=

0%o,0xd%x\n",

value,

value,

value)

printf("%d,%d\n",

0x123ABC,

027)

int

ov

=

077

unsigned

int

hv

=

0xBC

printf("%O=%x,%X=%o\n",

ov,

ov,

hx,

hx)

没有专门的二进制表示方法,自己不断用n模2取余数,顺序输出就行了。参见下列代码的主函数 dectobin

#include<stdio.h>

int main(void)

{

int i,n

void dectobin(int n)

scanf("%d",&n)

dectobin(n)/*定义函数,将n转换为二进制之后的数值*/ printf("\n")}

void dectobin(int n) {

if(n>1) dectobin(n/2)

printf("%d",n%2)/*输出二进制数值*/

}