5.c语言逻辑运算与算术运算

按位与(&),按位或(|)和按位异或都是双目位操作符


它们首先把两个数字转换成二进制补码,然后把两个
    补码中对应数位上的数字进行计算


两个二进制数位上的数字如果都是1则进行按位与计算后
    结果也是1,否则结果就是0


   3    0000 0011
&  5    0000 0101
        0000 0001


按位与可以把一个二进制补码中某些数位清0
任何二进制数位和0做按位与计算结果是0,和1做
    按位与计算结果不变


如果两个二进制数位上有一个是1则对他们进行按位或计算
    的结果就是1,否则就是0


     3          0000 0011
|    5          0000 0101
                0000 0111
按位或可以把一个二进制补码中某些数位设置成1
任何二进制数位和1做按位或计算结果是1,和0做按位或
    计算结果不变


如果对应数位上的数值一样则对他们做按位亦或结果是
    0,否则结果是1


    3           0000 0011
^   5           0000 0101
                0000 0110


按位亦或可以把二进制补码中某些数位求反
任何二进制数位和1做按位亦或会变成相反数值,和0做按位
    亦或保持不变


移位操作符可以把二进制补码中所有数位统一向左
    或者向右移动n个位置
移位操作符是双目操作符
左边的数字是要进行移位操作的数字
右边的数字是移动的位数
移位操作不会修改任何存储区的内容
左移操作符采用<<表示
右移操作符采用>>表示
左移后右边空出来的位置上固定补充0
有符号数据右移后左边空出来的位置上补充符号位,
无符号数据右移后左边空出来的位置上补充0
如果在移位操作过程中没有丢失有效数位则左移n位
    相当于乘以2的n次方,右移n位相当于除以2的n次方


&作为单目操作符使用时可以获得一个存储区的地址
使用时要把操作符&写在一个代表存储区内容的前边
采用%p作为占位符可以把地址数据打印在屏幕上


*作为单目操作符使用时可以根据一个地址数据找到
    它所对应的存储区


三目操作符可以从两个计算规则中选择一个来使用
三目操作符的格式如下
布尔值 ? 第一个计算规则 : 第二个计算规则
如果布尔值为真则采用第一个规则计算,否则采用第二个
    规则计算


如果一个表达式中包含多个不同类型的数据则计算机会
    首先把他们转换成同一个类型,然后再计算
这个转换过程完全由计算机完成,我们把它叫做隐式
    类型转换
在隐式类型转换中计算机会把占地小的类型转换成占地
    大的类型,这样可以避免数据丢失
字符类型和短整数类似都会被统一转换成整数类型然后
    再计算
如果不同类型占地大小一样则会把有符号类型转换成
    无符号类型,把整数类型转换成单精度浮点类型


可以在程序中随时给任何一个数字制定任意一个类型,
这叫做强制类型转换
强制类型转换的语法如下
(char)400
这表示把数字400从整数类型转换成字符类型


类型转换过程中计算机会采用一个新的存储区记录转换
    后的结果数字,然后用这个新存储区里的数字参与
其他计算.类型转换不会修改任何原有存储器里的内容.


流程控制语句可以让程序中的语句不是按照从上到下
    的顺序逐条执行


分支是一种流程控制语句,它可以在程序运行的时候
    从几组语句中选择一组执行
if关键字可以用来实现分支,这个关键字可以根据一个
    布尔值决定一组语句是否要执行
布尔值为真的时候执行这组语句,为假的时候不执行


如果多个分支的逻辑表达式在任何时候最多只有一个为
    真则可以使用else关键字把它们合并


当把多个无关分支合并的时候他们的逻辑表达式之间
    存在前后顺序,可以利用这一点简化后面的逻辑表达式


一个已经合并好的分支不一定能拆分成多个无关分支
    来理解


一个合并好的分支中如果所有逻辑表达式不可能同时为假
    则可以把最后一个逻辑表达式省略


如果一个分支的处理过程中存在有限个整数,每个整数
    对应一种专门的处理方法,这种分支可以采用switch...
case语句编写
用default开头的语句用来处理所有没列举出来的数字


预习
    1.循环(for,while)


作业
    1.编写程序从键盘得到代表小时,分钟和秒的三个
   整数数字,把这个时间的下一秒打印在屏幕上
hh:mm:ss







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值