进制换算
#include<stdio.h>int main()
{
int i;
scanf("%d",& i);
printf("%x", i);
return 0;
}
这是我用十进制18换算成十六进制12
但为什么用二进制10010,八进制的22 换算成十六进制就不行呢?
#include<stdio.h>
int main()
{
int i;
scanf("%0b",& i);
printf("%x", i);
return 0;
}
除了10进制之外的数字都是字符串属性
你用int去定义,自然不可以 wp231957 发表于 2021-9-12 10:26
除了10进制之外的数字都是字符串属性
你用int去定义,自然不可以
那如果我想直接用八进制换算怎么弄呢?
小马快跑RUN 发表于 2021-9-12 10:50
那如果我想直接用八进制换算怎么弄呢?
自然得自己写函数转换,像一楼那样直接%d 到%x进行转换是不可能的了
页:
[1]