C 基础 - 运算符&&(判断&&循环)

目录

一.运算符

1.算术运算符

2.关系运算符

3.逻辑运算符

4.位运算符

5.赋值运算符

6.杂项运算符

7.运算符优先级

二.判断

1.if

2.if..else..

3. if ..else if ..else

4.switch

三. 循环

1.while

2.do .. while

3.for

4.循环控制语句

1.break

2.continue

3.goto


一.运算符

运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。

1.算术运算符

运算符描述实例
+把两个操作数相加A + B 将得到 30
-从第一个操作数中减去第二个操作数A - B 将得到 -10
*把两个操作数相乘A * B 将得到 200
/分子除以分母B / A 将得到 2
%取模运算符,整除后的余数B % A 将得到 0
++自增运算符,整数值增加 1A++ 将得到 11
--自减运算符,整数值减少 1A-- 将得到 9

例子

%是取余,得到的是余数,  比如 5%2 得到的是 1;

++ 和  --  如果是 a++ 则先取值在 a+1

如果是 ++a 那就是先加1,再取值,哪个在前先走哪一个,

具体的可以在上面的截图中看到,

2.关系运算符

运算符描述实例
==检查两个操作数的值是否相等,如果相等则条件为真。(A == B) 为假。
!=检查两个操作数的值是否相等,如果不相等则条件为真。(A != B) 为真。
>检查左操作数的值是否大于右操作数的值,如果是则条件为真。(A > B) 为假。
<检查左操作数的值是否小于右操作数的值,如果是则条件为真。(A < B) 为真。
>=检查左操作数的值是否大于或等于右操作数的值,如果是则条件为真。(A >= B) 为假。
<=检查左操作数的值是否小于或等于右操作数的值,如果是则条件为真。(A <= B) 为真。

3.逻辑运算符

运算符描述实例
&&称为逻辑与运算符。如果两个操作数都非零,则条件为真。(A && B) 为假。
||称为逻辑或运算符。如果两个操作数中有任意一个非零,则条件为真。(A || B) 为真。
!称为逻辑非运算符。用来逆转操作数的逻辑状态。如果条件为真则逻辑非运算符将使其为假。!(A && B) 为真。

4.位运算符

和上面的逻辑运算符很相似,不过这个是在位上运算

运算符描述实例
&如果两个位上都为1,结果为1,反之都为0
0&0=0;   
0&1=0;    
1&0=0;     
1&1=1;
|如果两个相应的位都为 0,则结果为 0,否则为 1。
0|0=0;   
0|1=1;   
1|0=1;    
1|1=1;
^如果两个相应的位值相同,则结果为 0,否则为 1
0^0=0;   
0^1=1;   
1^0=1;  
1^1=0;
~对操作数的每一位执行逻辑取反操作,即将每一位的 0 变为 1,1 变为 0。
~1=0;
~0=1;
<<将操作数的所有位向左移动指定的位数

1 << 2为 100

转化为10进制  4

>>将操作数的所有位向右移动指定的位数100 >>2 为 1

5.赋值运算符

就是把算术运算的结果,赋值出去, a + b =c  , 要写成 c = a + b ,因为是向左赋值,

c = c + a;   可以简写成 c+=a;

运算符描述实例
=简单的赋值运算符,把右边操作数的值赋给左边操作数C = A + B 将把 A + B 的值赋给 C
+=加且赋值运算符,把右边操作数加上左边操作数的结果赋值给左边操作数C += A 相当于 C = C + A
-=减且赋值运算符,把左边操作数减去右边操作数的结果赋值给左边操作数C -= A 相当于 C = C - A
*=乘且赋值运算符,把右边操作数乘以左边操作数的结果赋值给左边操作数C *= A 相当于 C = C * A
/=除且赋值运算符,把左边操作数除以右边操作数的结果赋值给左边操作数C /= A 相当于 C = C / A
%=求模且赋值运算符,求两个操作数的模赋值给左边操作数C %= A 相当于 C = C % A
<<=左移且赋值运算符C <<= 2 等同于 C = C << 2
>>=右移且赋值运算符C >>= 2 等同于 C = C >> 2
&=按位与且赋值运算符C &= 2 等同于 C = C & 2
^=按位异或且赋值运算符C ^= 2 等同于 C = C ^ 2
|=按位或且赋值运算符C |= 2 等同于 C = C | 2

6.杂项运算符

运算符描述实例
sizeof()返回变量的大小。int a ;  sizeof(a) 将返回 4
&返回变量的地址。&a; 将给出变量的实际地址。
*指向一个变量。*a; 将指向一个变量。
? :条件表达式如果条件为真 ? 则值为 X : 否则值为 Y

7.运算符优先级

乘除运算符具有比加减运算符更高的优先级。括号的优先级更高.

逻辑的相比较会更低一点.

二.判断

1.if

2.if..else..

3. if ..else if ..else

这个已经等价于 switch了,和 if ..else if ..else.  比起来switch写起来很快,代码量更少

4.switch

三. 循环

1.while

while(条件为真)

{

//循环调用里面的代码

}

最后一次运行a为0,不满足 a>0这个条件 于是跳出循环

2.do .. while

do{

//运行这里的语句

}while(条件为真)

和 while的区别是   while(条件为假){ 不会执行这里面的语句}  do(条件为假){也会执行一次}

3.for

1.先初始化一个变量

2.判断是否为真

3.为真则执行这里

4.然后对变量进行操作,更改值

5.然后继续执行2,来进行判断,为真则继续从2开始重复,为假则跳过,开始执行{}大括号后面的语句.

4.循环控制语句

控制语句描述
break 语句终止循环
continue 语句结束此处循环重新开始下次循环迭代。
goto 语句将控制转移到被标记的语句。

1.break

可以看出条件成立,执行了3, 之后进到break语句,直接结束循环,进行下面的语句

可以和下面的continue 作比较 ,一个直接退出整个循环,一个是退出当前这次,循环

2.continue

成立的时候执行了一下3,然后继续循环,没有执行下面的4.

3.goto

可以看到 也是结束整个循环,直接跳转到 goto标记的语句,而且中间的语句也会跳过不再执行.

  • 25
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一然明月(嵌入式)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值