C语言知识点总结,全程干货---4语句,运算符和位运算

本文详细介绍了C语言中的循环结构(while,do-while,for),分支语句(if,switch),以及各种运算符(算数、关系、赋值、逻辑、位和条件运算符)的使用和特点。还讨论了跳转语句如break和continue。
摘要由CSDN通过智能技术生成

语句

C中的语句大致可以分为3类:1.顺序  2.循环  3.分支,顺序语句即正常的从上到下顺序执行的语句流,这里不再过多介绍,下面主要介绍循环和分支。

循环

C中主要有三种循环,while , do  while ,  for

其定义和使用

while

while(判断表达式)

{

循环体;

}

for

for(初始化语句;判断语句;更新语句)

{

循环体;

}

do   while

do

{

循环体

}while(判断表达式);

在上述语句中,要特别注意循环的执行范围,即注意循环体中的分号“;”,或大括号“{}”,所表示的循环体的范围,如果不加大括号,分号“;"即表示循环体的结束。正常使用时,尽量把循环体都使用大括号括起来,这样更易于区分循环体与循环体后的顺序语句,提高程序的可读性。

三个循环都可以实现同样的功能,但三者各有特点,do  while循环叫做出口条件循环,即先执行一次循环,再判断条件,循环体至少可以被执行一次,while 和 for 为入口条件循环,即先判断条件,再执行循环,循环体可能一次都不执行。

相比于do  while , for 和 while 更加常用,for,语句适用于需要初始化和更新的场合,程序结构比while更加紧凑。whil结构比较简单,易于理解。

运算符

循环和分支的判断与更新语句中经常要用到运算符,运算符需要注意的有两点,一是类型,即属于单目运算符、双目运算符还是三目运算符,二是优先级。

1.算数运算符:+ 加、- 减、* 乘、/ 除、% 余、++ 加加、--减减

2.关系运算符:< 小于、> 大于、 <= 小于等于、>= 大于等于、 == 恒等于、 !=不等于

3.赋值运算符:= 等于、+= 加等、-= 减等、*= 乘等、 /= 除等、%= 余等

4.逻辑运算符:  && 与、 || 或、! 非

5.位运算符:   &  与 、| 或、~ 取反、^ 异或、<< 左移、>> 右移  

6.条件运算符: ? :

7.字节运算符: sizeof()

8.括号运算符: ()

下表列出了运算符的优先级

分支

C中的分支语句主要有if语句和switch语句

if语句

1. if(条件)

        {

        语句;

        }

2.if(条件)

        {

        语句;

        }

else

        {

        语句;

        }

3. if(条件)

        {

        语句;

        }

else if(条件)

        {

        语句;

        }

        else

                {

                语句;

                }

if语句大概有以上三种用法,第三种原则上可以无限嵌套下去,但一般情况下只用到两层到三层嵌套,如果分支太多,就需要用到switch语句。

switch (整形表达式)

{

case 常量1:语句一;

                        break;

case 常量2:语句二;

                        break;

case 常量3:语句三;

                        break;

     ........

default : 未查找到时的语句;

}

switch语句会逐一检查哪个case和switch条件相同,如果相同,便从这个case语句开始执行,一直到程序结束,这意味着这个case以下的case语句都会被执行,因此需要在case语句后面加上break,意思是执行完这个case后就跳出,不再执行下面的语句。但是如果需要执行下面的语句,就不用写break语句,其中,最后的default语句也可以省略。

注意switch语句中的条件只能是整形表达式,包括“char”类型,如果是浮点数,则不能使用switch语句,

跳转语句

跳转语句主要有break语句,continue语句,goto语句。goto语句基本上不用,这里不再介绍。

1. break;   // 结束循环函数,执行循环后面的语句

2.continue;   // 结束本次循环,开始下一次循环

位运算

位运算符有:& 与、| 或、~ 非、^ 异或、<< 左移、>> 右移,在C语言计算中,位运算很少使用,但是在工程中位运算必不可少。

与、或、非(取反)就不多说了,^ 异或运算符会逐位比较两个运算对象,相同为0,相异为1,移位运算符操作的都是二进制数,<< 左移运算符将运算对象向左移位,低位舍弃,高位补0,>> 右移运算符将运算对象向右移位,高位舍弃,低位补0.

& 与运算特性是和0相与后结果为0,和1相与后不改变,因此经常用来做掩码或将某个位置0,置0某个位时一般搭配~ 取反运算符;

| 或运算特性是和1相或后结果为1,因此经常用来将某个位置1;

^ 异或运算符的特性是和1相异或后,结果为相反数,例如,0^1=1, 1^1=0; 因此经常用来切换某个位。

<< 左移 、>> 右移 通常与上面的四种运算符搭配用来精准的控制某些位,其次还要注意,在不溢出的前提下,<< 左移n位相当于乘以2的n次幂,>> 右移n位相当于除以2的n次幂。

持续更新中.........

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值