C语言随堂笔记---条件分支结构
来源:互联网 发布:java能做什么好玩的 编辑:程序博客网 时间:2024/05/22 09:44
1.关系表达式
1.返回结果“真”--非0值和“假”--0值
2.关系逻辑运算符(<,>,<=,>=,==,!=)
使用关系运算符构建的关系表达式的结果为两种:0和1,
分别代表假和真字符型数据也可以进行关系运算
3.字符型的关系运算
字符型数据本质上也是一种整型数据
在比较时字符型使用其对应的ASCII码值进行比较
使用字符型和整型进行比较时同样使用字符对应的ASCII值跟整型数据进行比较
eg.
int i=10; double b=9; printf("i>b:%d\n",i>b);//0为假,非0为真 char c1='A'; char c2='a'; printf("c1>c2:%d\n",c1>c2); int num1=20; int result=c2<=num1; printf("c2<=num1:%d\n",result); printf("i==b:%d\n",i==b);//虽然类型不同,但值相同
2.逻辑运算符
需要多个条件叠加判断时需要使用逻辑运算;逻辑运算可以构建复杂的关系表达式;
逻辑运算包括三种:
与运算(&&)
表达式1 && 表达式2
或运算(||)
表达式1 || 表达式2
非运算(!)
! 表达式
逻辑运算时将非0作为真,0作为假处理;
eg.
//闰年 int year; printf("请输入一个年份:\n"); scanf("%d",&year); if((year%4==0&&year%100!=0)||year%400==0) printf("%d为闰年\n",year); else printf("%d不为闰年\n",year); printf("-----------------------------------\n");
运算符的优先级
逻辑运算短路
因为逻辑运算有短路情况,所以造成这种结果,短路情况有以 下两种:
与运算时:表达式1&&表达式2,如果表达式1为假,表达式2不再被执行
或运算时:表达式1||表达式2,如果表达式1为真,表达式2不再被执行
eg.
//短路 int i=0,j=5; int rst=i++&&j++; printf("rst=%d,i=%d,j=%d",rst,i,j); printf("-----------------------------------\n");
程序分支
C语言中分支包括:if分支和switch分支两种;
if分支语句中包含三种情况:
if分支语句
if..else分支语句
if..elseif..else分支链
* 当分支语句只有一条时,花括号可以省略,如果分支语句有多条需要使用花括号
* switch分支:break跳出循环;若没加break,case符合条件执行完,会接着往下执行
eg.
//例,if int i; printf("请输入一个整数:\n"); scanf("%d",&i); if(i<0) i=-i; printf("i=%d\n",i); printf("-----------------------------------\n"); //例,if...else char isRain; printf("今天是否有雨(Y/N):\n"); scanf("%c",&isRain); if(isRain=='Y'||isRain=='y') printf("下雨了,需要带雨具!\n"); else printf("没下雨,不需要带雨具!\n"); 例,if...else if...else double temp; printf("请输入今天的天气:\n"); scanf("%d",&temp); if(temp<15) printf("今天天气寒冷!请多穿衣服!\n"); else if(temp>=15&&temp<29) printf("温度适中,可随意穿\n"); else printf("高温炎热\n"); printf("-----------------------------------\n"); //例,成绩 double t; printf("请输入成绩!\n"); scanf("%lf",&t); if(t>=90&&t<=100){ printf("您的成绩优秀!\n"); }else if(t>=80&&t<90){ printf("您的成绩良好!\n"); }else if (t>=60&&t<80){ printf("您的成绩OK!\n"); }else if (t>=0&&t<60){ printf("您的成绩弱爆了!\n"); }else{ printf("输入的成绩范围0-100!\n"); }
三元运算符
表达式1 ? 表达式2 : 表达式3
判断表达式1的结果:
如果为真,整个三元运算表达式的结果为表达式2的值;
如果为假,整个三元运算表达式的结果为表达式3的结果
eg.
//...?... : ...三元运算符 int country; char gender; printf("您是不是中国人(1/0):\n"); scanf("%d%c",&country,&gender); printf("您的性别('F/M')\n"); scanf("%c",&gender); double Height=country==1?gender=='F'?1.60:1.70:gender=='F'?1.60:1.75; printf("Height%.2f\n",Height);
随堂笔记为个人学习笔记,若有错误,望指出,谢谢!!
0 0
- C语言随堂笔记---条件分支结构
- C语言之条件分支结构
- c语言学习第三课:条件分支结构
- C语言--分支结构
- C语言分支结构
- C语言--分支结构
- C语言分支结构
- 黑马程序员--C语言自学笔记---04分支结构
- C语言_分支结构
- c语言中的分支结构
- C语言02 -- 分支结构
- c语言程序 分支结构
- C语言 分支结构(Xcode)
- C语言之分支结构
- C语言基础-分支结构
- C语言学习-分支结构
- C语言分支循环结构
- C语言分支结构和循环结构
- vmware中三种上网方式的具体配置
- Maximum Subarray
- 【整理】常见Centos安装问题及其解决办法
- android全屏和去除标题and永远横屏锁定
- ADPCM文件解码详解
- C语言随堂笔记---条件分支结构
- Socket连接与HTTP连接
- SharedPreferences简单学习之统计app使用次数
- 【iOS】MD5加密与网络数据安全
- Linux Ubuntu Docker中访问host IP 超时 解决办法
- 正确配置Linux系统ulimit值的方法
- 使用nutz框架,找不到入口函数,访问Url报404
- Android 使用socket 实现简单的客户端和服务器端互相通信
- C++ Primer Plus 第六版_编程练习(5)(Chapter_five 6-10)