- 1、本文档共26页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《算法与数据结构》第2周:分支语句与其嵌套
分支语句及其嵌套;教学目的;教学重难点;教学过程; 用户输入学号(不超过120的正整数),程序判断是甲班(1~60)还是乙班(61~120)。
#include stdio.h
void main()
{
int study_id=0;
printf(请输入学号(不超过120的正整数):\n);
scanf(%d,study_id);
if(study_id=60)printf(该生属于甲班。\n);
else printf(该生属于乙班。\n);
}
; 其中if圆括号里的表达式称为条件表达式,可以是C++中的任意合法表达式,如算术表达式、关系表达式、逻辑表达式或逗号表达式等。本例中study_id=60是关系表达式。
该语句的执行流程是,先计算表达式的值,若表达式的值为真(或非0),则执行语句1;否则(表达式的值为假,或为0)执行语句2。; 运行之后,输入36后窗口显示:
; 运行之后,输入112后窗口显示:
;小提示:
同学们在学写if-else语句的时候,一定要注意,if后面必须带(表达式),而else后面千万不能带(表达式),它们是非此即彼的关系,只需要这个表达式的真假来控制执行某一分支。; 课后作业:
用户输入两个正整数,程序判断其大小后输出较大的那个数。; 今天我们在上次课的例子上稍微变动一下:假设现在只成立了甲班(学号1~60),如果输入的学号属于甲班,则输出“学号XX属于甲班”,如果不属于甲班,则程序不做任何显示。
分析一下很容易得知,如果
study_id=60为假,则else后面虽然不需要任何语句,但必须写上“;”(空语句)来表示程序什么也不做,当然在这种情况下,可以整个省略掉else和空语句,只剩下if语句。可理解为如果什么,那么怎么样。根本不关心“什么”的对立面。; 那么相应的,程序代码变更为:
#include stdio.h
void main()
{
int study_id=0;
printf(请输入学号(不超过200的正整数):\n);
scanf(%d,study_id);
if(study_id=60)printf(该生属于甲班。\n);
}; 如果输入不超过60,那么程序判断出属于甲班:
; 如果输入大于60,则不显示任何班级:
; 课后作业:
用户输入考试分数(0~100的整数),程序判断是否及格,若及格则显示“通过”字样,否则不显示任何信息。; 前面两次课,大家学习了两分支程序的编写,但现实生活中却经常遇到不止两个分支而是多个分支的情况,那么怎样才能使if-else这两分支的语句实现多分支呢?
还是拿分班的例子考虑,现在有甲乙丙丁4个班,每班按顺序分得60个学号,程序对输入的学号判断其班次。
请看如下代码:;#include stdio.h
void main()
{
int study_id=0;
printf(请用户输入学号(不超过240的正整数):\n);
scanf(%d,study_id);
if(study_id=120)
{
if(study_id=60)printf(该生属于甲班。\n);
else printf(该生属于乙班。\n);
}
else
{
if(study_id=180)printf(该生属于丙班。\n);
else printf(该生属于丁班。\n);
}
}; 输入1~60中的一个,判断为甲班。
; 输入61~120中的一个,判断为乙班。
; 输入121~180中的一个,判断为丙班。
; 输入181~240中的一个,判断为丁班。
; 爱动脑筋的同学肯定会很快总结出嵌套if-else语句的规律,进而能够写出与例题效果相同但代码不一样的嵌套。这里给出一种常用嵌套,即在每个if分支嵌套:
if(study_id=180)
{
if(study_id=120)
{
if(study_id=60)printf(该生属于甲班。\n);
else printf(该生属于乙班。\n);
}
else printf(该生属于丙班。\n);
}
else printf(该生属于丁班。\n);;小提示:
不管需要多少分支,你只需要把握各大支小支好逻
您可能关注的文档
- 如何撰写读书报告和综述文章-final.ppt
- VisiBrokerCORBA NameService使用方法.doc
- VHDL硬件语言与可编程逻辑器件发展.doc
- Verilog基本概念a.pdf
- VC++最全最好学习日志以与编程技巧.pdf
- Visual FoxPro运算符与表达式.doc
- visul c++6.0使用.doc
- VLAN扩展.ppt
- vb中将数字变成大写.doc
- 如何确定部门职能和岗位说明书.ppt
- 数学(B卷)-浙江省温州市2024学年第一学期温州高二期末教学质量统一检测(A卷)试题和答案.docx
- 英语-天津市五区县重点校2024-2025学年高二上学期1月期末联考试题和答案.pdf
- 水仙观察日记短信 水仙观察日记(通用9篇).doc
- 氨事故应急预案优质8篇.doc
- 政治(B卷)-浙江省温州市2024学年第一学期温州高二期末教学质量统一检测(A卷)试题和答案.docx
- 政治-河南省三门峡市2024-2025学年高二上学期1月期末调研考试试题和答案.docx
- 政治-湖南省长沙市湖南师范大学附属中学2025届高三月考试卷(五)试题和答案.docx
- 英语丨炎德英才大联考江西省萍乡市萍乡中学2025届高三12月月考卷(五)英语试卷及答案.docx
- 2025年人教版高中思想政治必修三第三单元全面依法治国第七课治国理政的基本方式第1框我国法治建设的历程.pptx
- 2025年人教版高中思想政治必修三第一单元中国共产党的领导单元整合提升.pptx
文档评论(0)