C语言中的运算符

一,算数运算符

1.我们常见的算术运算符有:

+ ,- ,* ,/,%(取余)

eg.1

代码示例:

结果:

2.自增运算符:++

int a=10;

a=a+1;

printf("%d",a);//打印出的结果为11;可以等价为a++,++a;

   自减运算符: --    

int b=5;

b=b-1;

printf("%d",b);//聪明的你可能去已经猜到了,没错结果就是4;可以等价为b--,--b;

看到这里你可能会有一些疑问?

为什莫会有a++,++a;b--,--b;两种不同的写法;难道它们之间没有什么区别吗?

机智如你,肯定是有的,下面我会给出使用它们的原则:

尽量少用!

++(--)在变量之后,变量先参与运算,在自增或自减;

++(--)在变量之前,变量先自增或自减,再进行运算;

许多人在使用时一个不留神可能会出错;

为了方便理解,我给出以下例子:

eg.2

代码示例:

结果正如我分析的那样,机智的我,还不给个赞。

二,比较运算符

>  , <  , <=  ,   >=  ,  ==  ,  !=;

结果:要么为0(假),要么为1(真)。

C语言中非0都为真!

eg.3

代码示例:

结果:

三,逻辑运算符

1.逻辑与(短路与)&&

条件1 && 条件2     

此表达式要成立,条件1和条件2都要成立;

2.逻辑或(短路或)||

条件1 || 条件2     

此表达式要成立,条件1和条件2只要一个成立即可;

3.逻辑非 !

将假的变成真的,将真的变成假的。

逻辑运算符的结果是0或1;

!(n1<n2 || n1>10)==  (n1>=n2&&n2<=10)

四,位运算符

是对二进制位进行运算操作

1. & 按位与

2. |  按位或

3. ^ 按位异或

4.按位取反运算符

顾名思义,将原来条件结果的值取反

比如 :

int a = 10;

a的补码为  00000000 00000000 0000000 00001010

~a它的补码为:

                    11111111  11111111 11111111 11110101

反码:            11111111 11111111 11111111 11110100

原码:          10000000 00000000 00000000 00001011

结果为                      -11;

 5.左移运算符和右移运算符

1.右移运算符 :>>;

无符号数据低位丢弃,高位补0

有符号数据低位丢弃,高位补符号位;

2.左移运算符 : <<;

右边补0;左边丢弃

6.三目运算符

条件表达式 ?表达式1 :表达式2;

条件表达式成立,则执行表达式1;否则表达式2;

 算数运算 > 关系运算 > 逻辑运算  > 赋值运算

如不确定,加个()即可;

最最重要的是给个赞吧!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值