付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第4章 选择结构程序设计信科系专职教师:赵小蕾邮箱: 计算机程序设计I主要内容选择结构和条件判断4.14.2用if语句实现选择结构4.3用switch语句实现多分支选择结构4.4关系、逻辑、条件运算符及表达式4.5选择结构程序综合举例4.1 选择结构和条件判断在现实生活中,需要进行判断和选择的情况是很多的如果你在家,我去拜访你如果考试不及格,要补考C语言有两种选择语句: (1) if语句,实现两个分支的选择结构 (2) switch语句,实现多分支的选择结构4.2 用if语句实现选择结构if语句的一般形式: if (表达式) 语句1 else 语句2 关系表达式逻辑表达式数值表达式方括号内的部
2、分为可选的简单的语句复合语句(括起来的语句)另一个if语句等4.2 用if语句实现选择结构if语句的一般形式: if (表达式) 语句1 else 语句2 3种if语句形式:if (表达式) 语句14.2 用if语句实现选择结构例1:求两整数最大者。 int main() int a,b,max; printf(”请输入两个数: ”); scanf(“%d%d”,&a,&b); max=a; if (maxb) max=a; else max=b; printf(“max=%d”,max); return 0;有else语句3种if语句形式:if (表达式) 语句1 else 语句2 表达式语
3、句1语句2真假4.2 用if语句实现选择结构3种if语句形式:if (表达式1) 语句else if (表达式2) 语句else if (表达式3) 语句 else if (表达式m) 语句else 语句m+1(在else部分又嵌套了多层的if语句)表达式1真假表达式2真假表达式3真假语句1语句2语句3语句n例3:学生成绩分类:A等为85分以上;B等为7084分;C等为6069分;D等为60分以下。if(grade=A) printf(“85100”);else if (grade=B) printf(“7084”);else if (grade=C) printf(“6069”);else
4、printf(“=13 & age=17判断年龄小于12或大于65?age654.4 关系、逻辑、条件运算符及表达式aba & ba | b 真真真真真假假真假真假真假假假假逻辑运算的真值表注意:1)C语言中“真”用数值1表示,假用数值“0”表示。 2)将一个非零的数值认作为“真”4.4 关系、逻辑、条件运算符及表达式逻辑表达式(1) 若a=4,则!a的值为0(2) 若a=4,b=5,则a & b的值为1(3) a和b值分别为4和5,则a|b的值为1(4) a和b值分别为4和5,则!a|b的值为1(5) 4 & 0 | 2的值为14.4 关系、逻辑、条件运算符及表达式判别某一年是否闰年,用逻辑
5、表达式表示闰年的条件是符合下面二者之一:能被4整除,但不能被100整除,如2008能被400整除,如2000(year % 4 = 0 & year%100 !=0)| year % 400 = 0如果表达式值为1,则闰年;否则为非闰年4.4 关系、逻辑、条件运算符及表达式(三)条件运算符及表达式有一种if语句,当被判别的表达式的值为“真”或“假” 时,都执行一个赋值语句且向同一个变量赋值。如:if (ab) max=a; else max=b;max = (a b) ? a : b;条件运算符条件表达式4.4 关系、逻辑、条件运算符及表达式条件表达式的一般形式为表达式?表达式: 表达式条件运
6、算符的执行顺序:求解表达式1若为非0(真)则求解表达式2,此时表达式2的值就作为整个条件表达式的值若表达式1的值为0(假),则求解表达式3,表达式3的值就是整个条件表达式的值4.4 关系、逻辑、条件运算符及表达式#includeint main()char ch;scanf(%c,&ch);ch=(ch=A&ch=A&ch=Z) ch=ch+32;else ch=ch;4.3 用switch语句实现多分支选择结构例3:学生成绩分类:A等为85分以上;B等为7084分;C等为6069分;D等为60分以下。 switch(grade) case A:printf(85100“);break; ca
7、se B:printf(7084“); break; case C:printf(6069“); break; case D:printf(60“); break; default: printf(enter data error! “); if(grade=A) printf(85100“);else if (grade=B) printf(7084“);else if (grade=C) printf(6069“);else printf(60“);比较使用了3层嵌套的if,较为繁琐,不清晰易读用switch语句清晰明了4.3 用switch语句实现多分支选择结构 switch(grade
8、) case A: printf(85100n); break; case B: printf(7084n); break; case C: printf(6069n); break; case D: printf(60n); break; default: printf(enter data error!n); 值为A85-100例3:学生成绩分类:A等为85分以上;B等为7084分;C等为6069分;D等为60分以下。不能少4.3 用switch语句实现多分支选择结构switch语句实现多分支选择一般形式:switch(表达式) case 常量1 :语句1 case 常量2 :语句2 ca
9、se 常量n :语句n default : 语句n+1整数类型(包括字符型)不能相同以上条件都不满足执行该语句4.3 用switch语句实现多分支选择结构 switch(grade) case A: printf(85100n);break; case B: printf(7084n); break; case C: printf(6069n); break; case D: printf(60n); break; default: printf(enter data error!n); 值为B70-84例3:学生成绩分类:A等为85分以上;B等为7084分;C等为6069分;D等为60分以下
10、。4.3 用switch语句实现多分支选择结构 switch(grade) case A: printf(85100n);break; case B: printf(7084n); break; case C: printf(6069n); break; case D: printf(60n); break; default: printf(enter data error!n); 值为Fenter data error! 例3:学生成绩分类:A等为85分以上;B等为7084分;C等为6069分;D等为60分以下。4.3 用switch语句实现多分支选择结构 scanf(%c,&grade);
11、 printf(Your score:); switch(grade) case A: printf(85100n);break; case B: printf(7084n);break; case C: printf(6069n);break; case D: printf(60n);break; default: printf(enter data error!n); 4.3 用switch语句实现多分支选择结构 scanf(%c,&grade); printf(Your score:); switch(grade) case A: printf(85100n);break; case B
12、: printf(7084n);break; case C: printf(6069n);break; case D: printf(60n);break; default: printf(enter data error!n); 4.3 用switch语句实现多分支选择结构 scanf(%c,&grade); printf(Your score:); switch(grade) case A: case B: case C: printf(6069n);break; case D: printf(60n);break; default: printf(enter data error!n); 4.5 选择结构程序综合举例例4.8 写一程序,判断某一年是否闰年。解题思路:用变量leap代表是否闰年的信息。若闰年,令leap=1;非闰年,leap=0。最后判断leap是否为(真),若是,则输出“闰年”信息#include int main()int year,leap;printf(enter year:); scanf(%d,&year);if(year%4=0 & year%100!=0) | (year%400=0) leap=1;else leap=0; if (leap) prin
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026氢燃料电池汽车商用车应用场景与产业链布局深度研究
- 2026中国石油天然气开采行业政策研究及市场动态分析
- 2026中国无人机物流配送网络构建与低空空域管理改革
- 2026中国智能视频和图像识别行业市场现状供需分析及投资评估规划分析研究报告
- 2026中国医疗设备租赁产业发展及融资模式分析报告
- 2026中国石油炼矿行业市场现状供需分析及投资评估规划分析研究报告
- 中冶建工集团人力资源岗位笔试题目及答案
- 河南航空港发展投资集团有限公司笔试真题
- 吉水县图书馆2026年面向社会公开招聘5名编外人员的备考题库及参考答案详解【B卷】
- 广播电视集团编辑岗位笔试题目及答案大全
- 高中数学 加练 专题5 第50练 复 数
- 贵州省黔东南州2025-2026学年七年级下学期期末考试英语试卷(含答案)
- SYT 6649-2025《油气管道管体缺陷修复技术规范》
- 2026年秋季新教材统编版九年级上册道德与法治全册知识点背诵提纲精简版
- 2026年高考地理真题山东卷含答案
- 2026中国新材料技术在航空航天领域应用趋势及投资前景报告
- 高支模(盘扣式)监理实施细则
- 连续性肾替代治疗抗菌药物剂量调整专家共识(2026年版)
- 地铁施工请销点流程课件
- 分布式光伏施工劳务承包合同
- 小学英语三年级上册Unit 3单元作业设计
评论
0/150
提交评论