C语言程序设计教程 教学课件 作者 李玲1第4章.ppt

C语言程序设计教程 教学课件 作者 李玲1第4章.ppt

ID:50320730

大小:185.50 KB

页数:32页

时间:2020-03-08

C语言程序设计教程 教学课件 作者 李玲1第4章.ppt_第1页
C语言程序设计教程 教学课件 作者 李玲1第4章.ppt_第2页
C语言程序设计教程 教学课件 作者 李玲1第4章.ppt_第3页
C语言程序设计教程 教学课件 作者 李玲1第4章.ppt_第4页
C语言程序设计教程 教学课件 作者 李玲1第4章.ppt_第5页
资源描述:

《C语言程序设计教程 教学课件 作者 李玲1第4章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章选择结构程序设计北京科技大学计算机系C语言程序设计本章主要内容4.1if语句4.1.1if语句的一般形式4.1.2if语句的嵌套4.2switch语句4.2.1switch语句的一般形式4.2.2break语句4.3选择结构程序设计举例2简单分支语句语句一般格式if(表达式)语句功能:计算表达式的值,如果是一个非0值(即逻辑真),就执行内嵌语句,否则(即逻辑假)跳过内嵌语句,顺序执行后续语句。内嵌语句,可为:赋值语句函数调用语句控制语句复合语句空语句可为算术、关系、逻辑、赋值等表达式3简单分支语句的算法:例如:⑴if(x>0)m++;⑵if

2、(a>b){c=a;a=b;b=c;}表达式非0TF语句N-S结构图语句流程图NY表达式非0?4双重分支语句语句一般格式if(表达式)语句1else语句2功能:计算表达式的值,如果它的值是一个非0值(逻辑真),就执行内嵌语句1,之后跳过内嵌语句2,执行后续语句;否则跳过内嵌语句1,执行内嵌语句2,之后执行后续语句。5双重分支语句的算法:例如:⑴if(x>0)m++;elsem--;⑵if(ch>='a'&&ch<='z'){ch=ch-32;printf("%c",ch);}elseprintf("%c",ch);表达式非0TF语句1语句

3、2N-S结构图语句1语句2流程图NY表达式非0?6多重分支语句语句一般格式if(表达式1)语句1elseif(表达式2)语句2……elseif(表达式m)语句melse语句n功能:依次计算并判断表达式i,为非0时执行后面的语句,都为0时,执行语句n无论执行完那个语句分支,都转到后续语句7多重分支语句的算法流程图表达式2?表达式1?语句n语句1语句2语句m…YNYNNY表达式m?8多重分支语句的算法N-S结构图表达式1?TF表达式2?语句1TF语句2…表达式m?TF语句m语句n例如:if(a<0)x=-1;elseif(a==0)x=0;elsex

4、=1;9if语句的简单应用【例4.1】输入一个字符,如果是大写字母,则将其转换为小写字母输出,否则直接输出。输入:用getchar或scnaf函数ch是否为大写字母:ch>='A'&&ch<='Z'(或ch>=65&&ch<=90)大写字母转换为小写字母:ch=ch+32输出:用putchar或printf函数思路:10程序:#include"stdio.h"main(){charch;ch=getchar();if(ch>='A'&&ch<='Z')ch=ch+32;printf("%c",ch);}程序运行情况如下:Gg运行jc4_1可

5、使用条件表达式代替putchar(ch>='A'&&ch<='Z'?ch+32:ch);putchar('')114.1.2if语句的嵌套如果if的内嵌语句中又使用了一个if语句,则构成if语句的嵌套。【例4.a】比较两个整数的关系。#includemain(){intx,y;printf("EnterintegerXandY:");scanf("%d%d",&x,&y);if(x!=y)if(x>y)printf("X>Y");elseprintf("X

6、断:if的内嵌语句if和else的配对运行jc4_a提倡缩格书写有利于阅读程序12if语句嵌套的形式简单if语句的嵌套形式if(表达式)if语句双重(或多重)分支if语句的嵌套形式if(表达式)if语句elseif语句可以是各种形式的if语句可以是各种形式的if语句如果是简单if语句,必须用“{}”括起13例如:⑴if(c<=100)if(c>=50)printf("50<=c<=100");⑵if(c<=100)if(c>=50)printf("50<=c<=100");elseprintf("c<50");elseif(c<=15

7、0)printf("100150");⑶if(c<=100)if(c>=50)printf("50<=c<=100");elseprintf("c<50")与哪个if配对?14再例如:if(a>b)if(a>c)if(a>d)m=1;elsem=2;elsem=3;问题:哪一个else和哪一个if相匹配?规则:在嵌套的if~else语句中,else总是与上面的离它最近的尚未配对的if配对。15举例【例4.4】输入一个数,判断它是奇数还是偶数,如果是奇数则进一步判断它是否为5的倍数。定

8、义变量x输入x的值x是奇数TF输出“odd”x是5的倍数输出“even”TF是5的倍数16程序:main(){intx;scanf("%

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。