进制
几进制 逢 几进一
二进制 (0,1) 逢二进一
八进制 (01234567) 逢八进一
( 7+1=10 )
十进制 (0123456789) 逢十进一
( 9+1=10)
十六进制(0123456789abcdef)(15+1=10)
二进制加法
1+0=1
1+1=10
11+10=101
111+111=1110
八进制加法
3+4=7
3+5=10
3+6=11
5+6=13
十六进制加法
6+7=d
6+8=e
7+9=10
7+b=12
输入输出(重点)
int b = 015;//八进制表示15
printf("%d\n", b); //十进制输出
printf("%o\n", b);//八进制输出
printf("%#o\n", b);//加上八进制前缀并八进制输出
int c = 0x2a;//十六进制表示16
printf("%d\n", c); // 十进制输出
printf("%x\n", c); //十六进制输出
printf("%#x\n", c);//加上十六进制前缀,十六进制输出
int a = 0b101;//用二进制表示101
printf("%d\n", a);//十进制输出
printf("%o\n", a);//二进制输出
printf("%#o\n", a);//加上二进制前缀,二进制输出
转义字符
\n 换行
\t 4个空格
’ '原封不动输出
‘’ ''原封不动输出
自增和自减
前自增或则前自减
先对自己进行加或者减,再进行其他操作
后自增或则自减
先进行其他操作,在对自己进行加或减
不管是前自增还是后自增,自己始终都要加一
自减类似
类型转换
1.自动类型转换(重点)
float f=100.2;
int n=f;
printf("%d\n",n);// 100
float f=100.2;
float f1=100.2;
int n=f+f1;
printf("%d\n",n);//201 尽量保证数据不失真
2.强制类型转换
int a=100;
float f=(float)a;
printf("%f\n",f);//100.000000
printf("%f\n",(float)100);//100.000000
return 0;
int sum=100;
int people=7;
float chu=sum/people;
printf("%f\n",chu);//14.000000
return 0;
int sum=100;
int people=7;
float chu=(float) sum/people;
printf("%f\n",chu);//14.285714
return 0;
循环
while()
for()
switch()
do……while()
跳出循环
break 用于跳出循环,结束循环
continue 用于结束当前循环 进行下一次循环
return
指针
32位系统中为什么最大支持的内存为4G
内存的最小单位(byte),每个字节为8位(bit)
计算机是由很多个电位组成的,每个电路的电压可以是0v或则0, 5v时电路为1
32位cpu,32根线,每根线取值是0或则1,连续32个0(最小值),连续32个1(最大值)
2的32次方,4g
int a=10;
int *p=&a;
** 的作用*
1.乘法
2.定义一个指针变量 int *p char *p double *p
3.便是获取指向指针的数据
输出地址用 %p
#include<stdio.h>
void