12.13课堂总结

整型常量的表示方法:
(1)二进制数:由0和1组成
10101=12^0+021+1*22+02^3+12^4
(2) 八进制数:由0~7组成的,八进制数开头是数字0,以区分八进制数
0345 0123 0765 0765
(3)十六进制数:由数字09和字母af或者A~F组成,并且以0x开头。
0x123 0xab34
(4)二进制数:1111
十进制数:8421 8+4+2+1=15
111 4+2+1=7
(5)10101011:171(十进制),0253(八进制),0xab

十六进制数转十进制 16^(n-1)
八进制转十进制 8^(n-1)

(6)位操作
&:位与
将十进制数,八进制数或十六进制数转化为二进制数,进行位与运算!
|:位或
int main()
{
int num;
num=4|3;
printf("4|3=%d\n" num);
return 0;
}

 ~:非(取反)   //计算机是补码存储,原码输出
     原码:正数的原码是其本身,负数的原码是在正数原码的基础上符号位为1
     反码:正数的反码是其本身,负数的反码是在其原码的基础上符号位不变,其他位按位取反
     补码:正数的补码是其本身,负数的补码是在其正数的原码基础上,符号位不变,其余各位取反然后加1,即反码加1
      23:  0001 0111
      ~23:1110 1000(补码)
     反码:1110 0111
     原码:1001 1000              
^ : 异或
             4^7= 
                      0100
                     ^0111
                 …………
                       0011
<<: 左移
          8<<2 即把八转换为二进制数 1000
                                                    100000
          8*2^2=32 左移多少位就乘以2的多少次方
>>: 右移
         与左移互逆
          8>>2=2

  赋值操作符
  赋值号: =
  +=
           num+=i; ------> num=num+i
 -=
 *=
 <<=
 %=
 &=

4.逻辑运算符和条件运算符
(1)逻辑运算符
&&:逻辑与
表达式1 && 表达式2
当表达式1和表达式2同为真时,结果为真
||:逻辑或
表达式1 || 表达式2
当表达式1和表达式2有一个位真时,结果为真
!:非
!表达式1
若表达式为真,结果为假,
若表达式为假,结果为真,
(2)条件运算符
?:
表达式1?表达式2:表达式3
若表达式1为真,执行表达式2,表达式1为假,执行表达式3
a>b?a:b
a,b,c 取最大值
a>b?(a>c?a:c):(b>c?b:c)

++i,--i,i--

运算优先级
括号成员第一,全体单目第二,乘除余第三,加减第四;位移第五,关系第六,等不等於第七;
位与,异或和位或八九十,
逻辑或和与第十二和第十一,
条件高于赋值,逗号运算最低。

c语言的三大结构
顺序结构,分支结构,循环结构
1.分支结构
(1) if(表达式)
{......}
表达式为真则执行{}里的语句;

(2)if else

(3)多重
(4)if else 嵌套使用

在if的{}里面定义的变量,只能在{}中使用,在{}之外无效!!!

switch...case:
(1) switch(option)
{
case option1:
break;
case option2:
break;
default:
break;
}
根据option的值选择性执行case语句,若没有与之对应的case语句,执行default语句。
*注意事项:default语句switch{}里的任意位置;
case语句后的大括号是可以省略的,超过三条建议加上!!
break视情况而定是否写,若case语句无break,则顺次执行所有的case语
句直到把case语句执行完毕,退出switch

循环结构
while() do{}while() for(;;)
1.while(表达式)
{
循环体
}
先判断条件是否满足执行条件,满足则执行循环体,每执行一次循环体,进行一次条件判断,不满足则退出循环。

break/continue
break:
跳出当前循环
continue
跳过当前循环,进行下一次循环

do{}while()
do
{
//循环体
}while(表达式);//while循环没有分号
先执行后判断

for(;;)
for(表达式1;表达式2;表达式3)
{
//循环体;
}
表达式1:
循环条件初始化
表达式2:
循环结束条件或循环执行条件
表达式3:
循环步长或者变量值的更新
注:表达式1,2,3可以任意省略
但是,“;;”不可省略!!!!!!!!!!!!!!

你可能感兴趣的:(12.13课堂总结)