第四章 语句.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第四章 语句.ppt》由用户(hyngb9260)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第四章 语句 第四
- 资源描述:
-
1、 第四章 语句 计算机应用基础计算机应用基础第一节第一节 概述概述一、三种基本结构的流程图表示一、三种基本结构的流程图表示n结构可用流程图描述。结构可用流程图描述。n常用的流程图有两种:一种是传统流程图,特点是直常用的流程图有两种:一种是传统流程图,特点是直观易懂,如图(观易懂,如图(a)。)。AB (a)n另一种是另一种是N-S图,以创始人图,以创始人Nassi和和Schneiderman名名字首字母命名,是结构化程序设计流程图,如图(字首字母命名,是结构化程序设计流程图,如图(b)所示。所示。AB (b)(一)顺序结构(一)顺序结构n先执行先执行A操作,再执行操作,再执行B操作,操作,A、
2、B是顺序关系,如是顺序关系,如图图4-1所示所示AB (a)AB (b)(二)分支结构(二)分支结构n如果条件如果条件P成立(为真)则执行成立(为真)则执行A,否则(为假)则,否则(为假)则执行执行B,A、B只能执行其一,两条路径会合在一起然只能执行其一,两条路径会合在一起然后出口,如图所示后出口,如图所示假假真真PAB(a)ABP真真假假(b)(三)循环结构(三)循环结构 n循环结构有两种:一种是当型循环,当条件循环结构有两种:一种是当型循环,当条件P为真时,为真时,反复执行循环体,条件反复执行循环体,条件P为假结束循环,如图为假结束循环,如图4-3所所示。另一种是直到型循环,先执行示。另一
3、种是直到型循环,先执行A操作,再判断操作,再判断P,P为真继续执行为真继续执行A,直到,直到P为假结束循环,如图所示。为假结束循环,如图所示。PA假假真真(a)A(b)真真 假假PA(a)A 直到直到P为假为假(b)二、二、C语句分类语句分类nC语言中的语句分类如下:语言中的语句分类如下:表达式语句表达式语句 空语句空语句 复合语句复合语句C语句语句 分支语句分支语句 流程控制语句流程控制语句 循环语句循环语句 转向语句转向语句流程控制语句流程控制语句n流程控制语句用于控制程序的流程,以实现程序的各流程控制语句用于控制程序的流程,以实现程序的各种结构方式,它们由特定的语句定义符组成,如种结构方
4、式,它们由特定的语句定义符组成,如if、for。语言有九种流程控制语句,可分成以下三类:。语言有九种流程控制语句,可分成以下三类:n 分支语句分支语句if语句(单分支语句(单分支if语句,双分支语句,双分支if语句,多分支语句,多分支if语语句)和句)和switch语句。语句。n 循环语句循环语句for语句,语句,while语句,语句,do while语句。语句。n 转向语句转向语句break语句,语句,continue语句,语句,goto语句,语句,return语句语句 第二节第二节 表达式语句和空语句表达式语句和空语句 n一、表达式语句一、表达式语句nC语言是一种表达式语言,所有的操作运算
5、都通过表语言是一种表达式语言,所有的操作运算都通过表达式来实现。达式来实现。n由表达式组成的语句称为表达式语句,它由一个表达由表达式组成的语句称为表达式语句,它由一个表达式后加上一个分号式后加上一个分号“;”组成。组成。n 表达式语句的一般格式:表达式语句的一般格式:表达式;表达式;功能:执行表达式语句就是计算表达式的值。功能:执行表达式语句就是计算表达式的值。二、赋值语句二、赋值语句n赋值语句是由赋值表达式后加上分号构成的表达式语赋值语句是由赋值表达式后加上分号构成的表达式语句。例如:句。例如:c=a+b是赋值表达式,而是赋值表达式,而c=a+b;是赋值语句。;是赋值语句。n赋值语句的一般格
6、式:赋值语句的一般格式:变量变量=表达式;表达式;三、空语句三、空语句n只有分号只有分号“;”组成的语句称为空语句。空语句是什组成的语句称为空语句。空语句是什么也不执行的语句,在程序中空语句可用来作空循环么也不执行的语句,在程序中空语句可用来作空循环体。体。四、复合语句四、复合语句n把多个语句用花括号把多个语句用花括号“”括起来组成的一个语句称括起来组成的一个语句称复合语句。复合语句。n例如:例如:x=y+z;a=b+c;printf(%d%d,x,a);第三节第三节 分支语句分支语句n分支语句的功能是在指定的条件取不同的值时,从一分支语句的功能是在指定的条件取不同的值时,从一个或多个语句中有
7、条件地选择零条或多条语句执行。个或多个语句中有条件地选择零条或多条语句执行。n在在C C语言中表示条件,一般用关系表达式或逻辑表达语言中表示条件,一般用关系表达式或逻辑表达式,除常见的关系表达式或逻辑表达式外,也允许是式,除常见的关系表达式或逻辑表达式外,也允许是其它类型的数据,如整型、实型和字符型等。其它类型的数据,如整型、实型和字符型等。n实现分支结构用实现分支结构用ifif语句或语句或switchswitch语句。语句。一、一、if语句的三种形式语句的三种形式n(一)单分支(一)单分支if语句语句n语句的一般格式:语句的一般格式:if(表达式表达式)语句语句1n功能:当功能:当“表达式表
8、达式”的值不等于的值不等于0(即判定为(即判定为“逻辑逻辑真真”)时,则执行语句)时,则执行语句1,否则直接转向下一条语句,否则直接转向下一条语句执行。执行。例如:例如:if(xy)printf(%d,x);表达式表达式语句语句1非非0(真)(真)0(假)(假)例例4.1求给定整数的绝对值求给定整数的绝对值n求求x绝对值的算法很简单,若绝对值的算法很简单,若x0,则则x即为所求;若即为所求;若x0,则则-x为为x的绝对值。的绝对值。n程序中首先定义整型变量程序中首先定义整型变量x和和y,其中,其中y用于存放用于存放x的的绝对值。绝对值。n输入输入x值之后,执行值之后,执行y=x;语句,;语句,
9、n即先假定即先假定x0,然后再判断,然后再判断x是否是否0,若,若x0,则,则x的绝对值为的绝对值为-x,将将-x赋给赋给y(y中原来的中原来的x值被冲掉了值被冲掉了)后后输出结果。输出结果。n若若x0,则跳过,则跳过y=-x;语句,直接输出结果,此时语句,直接输出结果,此时y中的值仍然是原中的值仍然是原x的值。的值。n 开始 输入xy=x x0 y=-x是 否 输出x,y 结束程序代码如下:程序代码如下:#include stdio.hmain()int x,y;scanf(%d,&x);y=x;if(xb)/*如果如果ab利用中间变量利用中间变量t交换之交换之*/t=a;a=b;b=t;/
10、*不可少,不能只写不可少,不能只写a=b;b=a;*/printf(%5.2f,%5.2f,a,b);(二)双分支(二)双分支if语句语句n语句的一般格式:语句的一般格式:if(表达式表达式)语句语句1 else 语句语句2n功能:如果表达式的值为非功能:如果表达式的值为非0(即真即真),则执行语句则执行语句1;如果表达式的值为如果表达式的值为0(即假即假),则执行语句则执行语句2;例如:;例如:if(xy)printf(%d,x);else printf(%d,y);表达式表达式语句语句1语句语句2非非0(真)(真)0(假)(假)例例4.3 求两个数中的最大值求两个数中的最大值#includ
11、e stdio#include stdio.h.hmain()main()float x,y;float x,y;scanf scanf(%f,%f,&x,&y);(%f,%f,&x,&y);if(xy)printf if(xy)printf(max=%fn,x);(max=%fn,x);else printf else printf(max=%fn,y);(max=%fn,y);例例4.4 输入整数输入整数a,判断其奇偶性,判断其奇偶性n判奇偶最简单的方法是除判奇偶最简单的方法是除2取余看结果。如果余数是取余看结果。如果余数是0,a是偶数;如果余数是是偶数;如果余数是1,a是奇数。是奇数。m
12、ain()main()int int a;a;scanf scanf(%d%d,&a);,&a);if(a%2=0)printf if(a%2=0)printf(%d is even.n%d is even.n,a);,a);else printf else printf(%d is odd.n%d is odd.n,a);,a);(三)多分支(三)多分支if语句语句n语句的一般格式:语句的一般格式:if(if(表达式表达式1)1)语句语句1 1else if(else if(表达式表达式2)2)语句语句2 2else if(else if(表达式表达式3)3)语句语句3 3 .else if
13、(else if(表达式表达式n)n)语句语句n nelse else 语句语句n+1n+1n功能:功能:如果表达式如果表达式1的值为非的值为非0(即真即真),则执行语句则执行语句1;如果表达式如果表达式2的值为非的值为非0(即真即真),则执行语句则执行语句2;如;如果表达式果表达式n的值为非的值为非0(即真即真),则执行语句则执行语句n,否则执行否则执行语句语句n+1。例如:例如:ifif(n500)c=0.15;(n500)c=0.15;elseelse if(n300)c=0.10;if(n300)c=0.10;elseelse if(n100)c=0.07;if(n100)c=0.07
14、;elseelse if(n50)c=0.05;if(n50)c=0.05;elseelse c=0;c=0;流程图流程图表达式表达式1表达式表达式2表达式表达式n语句语句n+1假假假假假假语句语句1语句语句2语句语句n真真真真真真n例例4.5 输入某学生的成绩,输出该学生的成绩和等级。输入某学生的成绩,输出该学生的成绩和等级。n设设90至至100分属于分属于A级,级,80至至89分属于分属于B级,级,70至至79分属于分属于C级,级,60至至69分属于分属于D级,级,0至至59分属分属于于E级。级。n首先提示用户输入成绩,当输入成绩不在合理范围首先提示用户输入成绩,当输入成绩不在合理范围(0
15、 x100)时,提示输入错误,程序结束。否)时,提示输入错误,程序结束。否则满足则满足x90就是满足就是满足100 x90,属于,属于A级;若级;若不满足不满足x90,则,则x x80,属于,属于B级;级;。程序代码如下:程序代码如下:main()main()int int x;x;printf printf(please input x(0=x=100)n);(please input x(0=x100|x100|x=90)else if(x=90)printf printf(x=%d-An,x);(x=%d-An,x);else if(x=80)else if(x=80)printf pr
16、intf(x=%d-Bn,x);(x=%d-Bn,x);else if(x=70)else if(x=70)printf printf(x=%d-Cn,x);(x=%d-Cn,x);else if(x=60)else if(x=60)printf(x=%d-Dn,x);printf(x=%d-Dn,x);else else printf(x=%d-En,x);printf(x=%d-En,x);二、二、if语句的嵌套语句的嵌套n嵌套指三种嵌套指三种if语句中的语句部分又包含有一个或多个语句中的语句部分又包含有一个或多个if语句。语句。n例如:例如:if-else内嵌套内嵌套 if(表达式表达式
17、1)if(表达式表达式2)语句语句1 else 语句语句2 else if(表达式表达式3)语句语句3 else 语句语句4n 嵌套应分层缩进书写,嵌套应分层缩进书写,if与与else内外分层配对出现,清晰度内外分层配对出现,清晰度好,不易出错。好,不易出错。n else总是与它上面最近的总是与它上面最近的if配对。为明确匹配关系,避免匹配对。为明确匹配关系,避免匹配错误,强烈建议将内嵌的配错误,强烈建议将内嵌的if语句一律用花括号括起来语句一律用花括号括起来n if语句允许嵌套,但嵌套的层数不宜太多。在实际编程时,语句允许嵌套,但嵌套的层数不宜太多。在实际编程时,应适当控制嵌套层数应适当控制
18、嵌套层数(23层层)。例例4.6 有一函数:有一函数:-1 (x0)编一程序,输入一个编一程序,输入一个x值,输出值,输出y值。值。main()int x,y;scanf(%d,&x);if(x=0)if(x0)y=1;else y=0;else y=-1;printf(x=%d,y=%dn,x,y);三、三、switchswitch语句语句nswitchswitch语句直接处理多分支选择。语句直接处理多分支选择。n(一)(一)switchswitch语句的一般格式:语句的一般格式:switch(switch(表达式表达式)case case 常量表达式常量表达式1 1:语句:语句1 1 ca
19、se case 常量表达式常量表达式2 2:语句:语句2 2 .case case 常量表达式:语句常量表达式:语句n n default default:语句:语句 n+1n+1 流程图流程图表达式=常量表达式1表达式=常量表达式2表达式=常量表达式n语句1语句2语句n语句n+1是是是否否否否n例如:要求按照考试成绩的等级打印出百分制分数段,例如:要求按照考试成绩的等级打印出百分制分数段,可以用可以用switchswitch语句实现。语句实现。switchswitch(grade)(grade)case case A A:printf:printf(9090100n100n););case
20、case B B:printf:printf(808089n89n););case case C C:printf:printf(707079n79n););case case D D:printf:printf(606069n69n););case case E E:printf:printf(60n60n););default:printfdefault:printf(errornerrorn););(二)带二)带breakbreak语句的语句的switchswitch语句语句n一般来说,在程序设计时经常使用带一般来说,在程序设计时经常使用带breakbreak语句的语句的switchsw
21、itch语句。语句。switch(switch(表达式表达式)case case 常量表达式常量表达式1 1:语句:语句1 1;breakbreak;case case 常量表达式常量表达式2 2:语句:语句2 2;breakbreak;.case case 常量表达式:语句常量表达式:语句n n;breakbreak;defaultdefault:语句:语句 n+1n+1 流程图流程图表达式=常量表达式1表达式=常量表达式2表达式=常量表达式n语句1语句2语句n语句n+1是是是否否否否n例例4.7 从键盘上输入一个百分制成绩从键盘上输入一个百分制成绩score,按下列,按下列原则输出其等级:
22、原则输出其等级:score90,等级为,等级为A;80score90,等级为,等级为B;70score80,等级,等级为为C;60score70,等级为,等级为D;scorenum2)max=num1;else max=num2;if(num3max)max=num3;printf(The three numbers are:%d,%d,%dn,num1,num2,num3);printf(max=%dn,max);n例例4.12 4.12 已知某公司员工的保底薪水为已知某公司员工的保底薪水为500500,某月所接,某月所接工程的利润工程的利润profitprofit(整数)与利润提成的关系如
展开阅读全文