1、自增和自减运算符是C语言中特有的一种运算符,他们的作用分别是对运算对象做加1和减1运算,其功能如下:
++ 自增运算符,如:a++,++a;
-- 自减运算符,如:a--,--a。
从表面上看,a++和++a的作用都是使变量a的值加1,但由于运算符++所处的位置不同,使变量a执行加1的运算过程也不同,
++a的运算过程是:先使变量a执行a+1的操作,再使用a的值,
a++的运算过程是:先使用变量a的值,再执行a+1的操作。
自增和自减运算符只能用于变量,不能用于常数或者表达式。
1、逗号运算符
在C语言中,逗号运算符“,”可以将两个或多个表达式连接起来,称为逗号表达式。逗号表达式的一般形式为:表达式1,表达式2,表达式3....表达式n
逗号表达式的运算过程是:先运算表达式1,再计算表达式2,....以此计算到表达式n。
1、条件运算符是C语言中唯一的一个三目运算符,他要求有3个运算对象,用它可以将3个表达式连接构成一个表达式。条件表达式的一般形式如下:
表达式1?表达式2:表达式3
其功能是首先计算表达式1,当其值为真(非0值)时,表达式2的值作为挣个条件表达式的值,否则将表达式3的值作为整个条件表达式的值。
C语言中共有6种位运算符,按优先级从高到低依次是:
按位取反(运算符~)--左移(运算符<<)--右移(运算符>>)--按位与(运算符&)--按位异或(运算符^)--按位或(运算符|)
1、c语言中的移位运算符有两种,左移运算符、右移运算符。
1)左移运算符(<<),其作用是讲一个数的各个二进制位全部左移若干位。例如a=a<<2,表示将a的二进制数左移2位,若a=15,即二进制数00001111,左移2位得到的结果是00111100,再如a=240,即二进制数11110000,左移2位后得到的结果是11000000.其中高位左移后溢出,被舍弃了,低位以0进补。
2)右移运算符(>>),其作用跟左移运算符相反,表示将一个数据的各个二进制位右移若干位,其中移到右端的低位被舍弃,高位以0进补。
2、左移和右移运算符有时候可以代替一些乘除运算,这样可以节省cpu的运行时间,提高代码的执行效率。例如1个数据左移1位相当于乘于2,右移一位相当于除以2(此结论只适合在运算结果没有溢出的情况)。
1、一个完整的C语言程序是由若干条语句按一定的方式组合而成的。按C语言语句执行方式的不同,C程序可分为以下三种:顺序结构、选择结构、循环结构。
顺序结构:程序按语句的顺序逐条执行;
选择结构:程序根据条件选择相应的执行顺序;
循环结构:程序根据某种条件,只要满足这个条件,就重复执行某段程序,直到条件不满足为止。如果这个条件永远存在,就形成一个死循环。死循环在单片机的C语言程序中普遍存在,最典型的例子就是每个程序的主函数中都有一个死循环(也成无限循环)while(1);
一般的C程序可以包含全部以上三种结构,也可以只包含一种或两种结构。
2、要保证C语言程序能够按照预期目的运行,还需要用到一些特殊语句对程序进行控制。
1)控制语句
控制语句完成一定的控制功能,C语言中有9中控制语句
if()...语句:条件语句
for()...语句:循环语句
while()...语句:循环语句
do...while()语句:循环语句
continue语句:结束本次循环语句
break语句:中止循环执行语句
switch语句:多分支选择语句
goto语句:跳转语句
return语句:从函数返回语句
2)函数调用语句
函数调用语句调用已定义过的函数(注意,一定是调用已定义过的函数,没有定义过的函数不能调用)。
3)表达式语句
一个表达式后面加一个分号“;”就构成了表达式语句
4)空语句
空语句不执行任何操作,常用于消耗机器周期,延时等待等用途。
5)复合语句
用一对大括号“{}”把一些语句括起来就构成了复合语句。在上一节的实例中我们已经学习了这种语句的用法。
3、if语句
c语言中逗号表达式的用法if语句用来判断所给定的条件是否满足,根据判定结果选择执行给出的操作。if语句有3种基本形式
1)if(表达式)
{
...
}
....
该if语句的执行情况为:先判断表达式的结果是否为真(非0值),如果为真,则执行大括号内的语句,否则不执行大括号内的语句。
语句示例如下:
if(i==0)
{
m=10;
}
...
这条语句所实现的功能是:如果变量i等于0,则给变量m赋值为10,否则m=10这个语句不会被执行
2)if(表达式)
{
语句1
}
else
{
语句2
}
其含义是:若条件表达式的结果为真,则执行语句1,否则,如果条件表达式的结果为假,则执行语句2.这里的语句1和语句2均可以是单个语句,也可以是复合语句
3、if(表达式1)
{
语句1
}
else if(表达式2)
{
语句2
}
else if(表达式3)
{
语句3
}
....
else
{
语句n
}
这种条件语句经常用来实现多种条件的判断,它是由if-else语句嵌套而成的,在这种结构里,else总是与距它最近的if相配对。
switch-case开关语句
1、switch-case开关语句是一种多分支选择语句,用来实现多方向条件分支。虽然采用if-else条件判断语句也可以实现多方向条件分支,但是当分支较多时,使用if-else条件语句的嵌套层次会大大增多,从而导致程序冗长、结构混乱。switch-case语句可以直接处理多分枝选择,使程序结构清晰、使用方便。
2、switch-case开关语句的组成形式。它的一般形式如下:
switch(表达式)
{
case 常量表达式1:{语句1;} break;
case 常量表达式2:{语句2;} break;
case 常量表达式3:{语句3;} break;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论