您的位置:首页 > 编程语言 > C语言/C++

C语言关系和逻辑运算符与分支语句

2016-06-10 09:44 155 查看
一. 关系运算符:

就是用来比较大小的

运算符
名称
>
大于
>=
大于等于
==
等于
<=
小于等于
<
小于
!=
不等于
1. 运算符间不能有空格, 而且顺序不能被颠倒

2. 可以直接用于基本数据类型, 但对于浮点数来说, 只能比较大小, 不能比较是否相等.

※ 面试题: 分别写出BOOL,
int, float. 指针类型的变量a与”零”的比较.

bool: if( !a )

if( a )

int:if( 0 == a )

float:const
floatEXP = 0.000001

if( a < EXP && a > -EXP ) // a在0.000001和-0.000001之间, 无限接近于0.

指针: if(NULL i = a ) or
if( NULL == a )

二. 逻辑运算符:

1. 运算符类型:a

① &&与运算

||或运算

③ ! 非运算

2. 优先顺序:

1).逻辑运算符之间的按由高到低顺序为:!(非) &&(与) ||(或)

2).逻辑运算符和其他运算符优先级由高到低顺序为:

!(非)

算术运算符

关系运算符

&&和||

赋值运算符

3. 运算法则:

&&: 有0则0, 全1为1

|| : 有1为1, 全0为0

! : 有1为0, 有0为1 (取反)

三. 短路运算:

1. 在”与”运算中, 如果第一个运算为0, 后面的就不作运算了.

2. 在”或”运算中, 如果第一个运算为1, 后面的就不作运算了.

注: 只要运算没作完, 就叫短路运算, 不管后面还剩几个表达式或者前面作了多少个表达式的运算.

四. if语句:

1. 语句格式:

if(表达式1)

{

语句块1

}

else if(表达式2)

{

语句块2

}

else if(表达式3)

{

语句块3

}

……

else if(表达式n)

{

语句块n

}

else(表达式m)

{

语句块m

}

五. switch:

表达形式:

switch(表达式)

{

case 1: 常量表达式1: 语句组1

case 2: 常量表达式2: 语句组2



case n: 常量表达式n: 语句组n

break;

default: 语句组1

}

1). switch后跟的表达式只能是int,
char, 枚举的

2). case里如果要定义变量, 要加大括号, 例:

switch(表达式)

{

case1:

{

// …..

}

break;

}

3). 多个case可以共用一组语句:

int nInput = 0 ;

scanf("%d", &nInput ) ;

switch( nInput )

{

case1:

case2:

case3:

{

printf("%d\n", nInput ) ;

}

break;

}

4). 使用技巧:

为防止丢失break, 先把结构搭起来, 再在结构内输入内容.

循环语句的使用

一. while循环:

1. 反复执行的程序段称为循环体

2. 循环变量: int i = 0 ; i为循环变量.

一般地, 默认一重循环写为int i = 0, 二重循环写为int j = 0 ;

3. 一般格式:

while( 一般是关系和逻辑表达式 )

{

循环体

}

后续语句 ;

①. while后不能加分号, 加了就成死循环.

死循环: 循环体中无循环终止条件或循环条件永远为真.

解决方法: 通过break和return语句结束循环.

②. 死循环形式:

while(1)

{

....

}

4. while循环执行流程:

首先判断循环中的条件是否为真, 如果为真, 则执行while循环体中的语句, 执行完毕后, 再回到条件那重新判断; 如果为假, 再跳过循环体,执行后面的条件.

二. do-while循环:

先执行循环体中的语句, 再判断条件真假, 如果为真则继续循环, 为假则停止循环. 就是说它至少执行一次循环. 一般格式为:

do

{

循环体

}while(表达式) ;

后续语句;

※do-while循环中while(条件)后面的分号必须要加, 否则编译报错.

三. for循环:

格式:

for( 初始化 ; 条件表达式 ; 增量 )

{

循环体 ;

}

1. for( int i = 1 ; i < 6 ; ++i )

在C语言中报错, 在C++中通过.

2. 死循环: for( ; 1 ; )

3. for循环不仅可以用于循环次数已经确定的情况, 还可以用于循环次数不确定而只给出循环结束条件的情况.

四. 其他:

1. 题目: 计算1+2+3+4+5. 比较以下两种写法(结果一样):

int i = 1 ;
int i = 0 ;

int Sum = 0 ;
int Sum = 0 ;

while( i <6 )
while( i < 5 )

{ {

Sum = Sum+ i ; ++i ;

++i ; Sum =Sum + i ;

} }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c语言