%d 输出整型数字,以10进制
%c 输出字符
%f 格式化浮点数(float,double都可以用)
%s 输出字符串
getchar()从键盘读取1个字符
putchar()向屏幕输出1个字符
%x 输出整型数字,以16进制 100——64
对于1000: %x输出 3e8 %X输出 3E8 %008x输出 000003e8
//不同类型的输出 char 4字节 取值范围:-128~127
intmain()
{
charc = 'a';
printf("%d,%c\n",c,c);//97,a 字符编码,字符
chard = 98;
printf("%d,%c\n",d,d);//98,b
charm = 200; //越界128<=char<=127
printf("%d,%c\n",m,m);//-56,?
charn = 201;
printf("%d,%c\n",n,n);//-55,?
}
分析:ASCII码与字符一一对应
字符a对应的ASCII是97,则以%d型输出97,以%c字符型输出a
ASCII是98的字符是b,以%d型输出98,以%c字符型输出b
char型的取值范围是:-128~127,此时200对于char型是越界的200对应得二进制是:1100 1000,最高位是符号位(1表示负数),负数的的二进制是个位取反加1,即0011 1000,可以表示成十进制数字-56
201对应得二进制是:1100 1001,最高位是符号位(1表示负数),负数的的二进制是个位取反加1,即0011 0111可以表示成十进制数字-55
从上面两个数字,我们可以得到:
|200|+|-56|=256, |201|+|-55|=256,一般规律:即两数的绝对值之和等于28=256