1. 计算机中的进制
计算机为什么使用二进制、八进制、十六进制?
实现容易:电路中的状态容易表示0和1(开与关、亮与灭、高与低)。
可靠性高:0和1两个数字传输和处理不易出错。
运算简单:与十进制数相比,二进制数的运算规则要简单。
适合逻辑:0和1与逻辑代数中的真和假相吻合。
易于转换:二进制与十进制数易于互相转换。
2. C语言中的进制
2.1 进制常量表示
C语言不能直接表示二进制常量。八进制数字以0开头,十六进制数字以0x或0X开头。
2.2 输入输入
2.2.1 进制打印
打印32以内的十进制、八进制、十六进制对应表。
for(int i=0;i<32;++i){
printf("%d\t%#o\t%#x\n",i,i,i);
}
进制的输出其实与字符输出是一样的,根据占位符的不同输出不同。
char a = 'a';
printf("%c\t%d\t%#o\t%#x\n",a,a,a);
2.2.2 输入进制数据
int n;
scanf("%o",&n);
printf("%d\n",n);
scanf("%x",&n);
printf("%d\n",n);
scanf("%d",&n);
printf("%d\n",n);
scanf("%i",&n);
printf("%d\n",n);