C语言关系和逻辑运算符与分支语句
来源:互联网 发布:技术支持0538泰安网络 编辑:程序博客网 时间:2024/05/01 19:06
一. 关系运算符:
就是用来比较大小的
运算符
名称
>
大于
>=
大于等于
==
等于
<=
小于等于
<
小于
!=
不等于
1. 运算符间不能有空格, 而且顺序不能被颠倒
2. 可以直接用于基本数据类型, 但对于浮点数来说, 只能比较大小, 不能比较是否相等.
※ 面试题: 分别写出BOOL, int, float. 指针类型的变量a与”零”的比较.
bool: if( !a )
if( a )
int:if( 0 == a )
float:constfloatEXP = 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语言关系和逻辑运算符与分支语句
- C语言 第四章 关系、逻辑运算与分支流程控制
- 分支语句和逻辑运算符
- Lesson 6:分支语句和逻辑运算符
- 第六章 分支语句和逻辑运算符
- Day5 分支语句和逻辑运算符
- 【C++】第6章 分支语句和逻辑运算符 知识总结
- C++学习笔记6 - 分支语句和逻辑运算符
- 黑马-C语言-关系,逻辑运算
- C语言 if分支与循环语句
- C语言基础:分支语句和常见运算符
- iOS从零基础到精通就业-C语言入门 3关系和逻辑运算符
- 【学习ios之路:C语言】布尔类型,关系运算符、逻辑运算符、if 、switch..case.语句
- C语言逻辑运算符
- C语言逻辑运算符
- c语言基础表达式, 关系运算符, 逻辑运算符, 位运算符, 数据的取值范围, 分支结构(if...else, switch...case)
- c语言基础-分支语句和循环语句
- day03 BOOL类型 关系运算符 逻辑运算符 分支语句 条件运算符 ? : swith语句 枚举类型
- 什么是java异步
- Ceph中出现unfound object的情况和处理
- java基础之线程
- ubuntu12.04清除释放内存空间。
- Delete Node in a Linked List
- C语言关系和逻辑运算符与分支语句
- 检测到在集成的托管管道模式下不适用的ASP.NET设置的解决方法
- 剑指offer(四十八)之复杂链表的复制
- 4系统环境搭配
- Ubuntu下搭建LAMP环境
- 异常处理
- Class and Object
- centos7安装mysql5.5二进制分发版本
- Android中Serializable和Parcelable接口用法