第3章 流程控制语句
zd2010c第3章[1]
[例2] 输入一个三位正数,以字符方式输出 各位数字, 并求各位数字立方和
#include<stdio.h> main() { int x,ge,shi,bai,y; printf(" 请输入一个三位正数"); scanf("%d",&x); ge=x%10; x=x/10; shi=x%10; bai=x/10; y=ge*ge*ge+shi*shi*shi+bai*bai*bai; printf("%c,%c,%c" ,bai+48,shi+48,ge+48); printf(" \n %d" ,y); }
第3章 基本程序设计
3.1 C语言语句概述
3.2 数据输出
3.3 数据输入 3.4 顺序结构程序设计举例
程序设计基本步骤
1.分析问题,抽象出数学模型,确定算法
2.根据算法,绘制流程图 3.根据流程图,编写程序 4.上机调试运行
数据、算法
1.有多少数据 每个数据的类型、是否需 赋初值 2.数据之间的关系 所用的运算
(4)编程者指定的分隔符
例如: scanf(”%d,%If”,&x,&y); /*使用逗号(也可以是分号、冒号等)作为分隔符*/ 输入 : 20,35.67
3.4顺序结构程序设计举例
[例1] 输入三角形的三边长,计算并输出 此三角 形面积。 若一个三角形的三边长分别为a、b、c, 记S =(a+b+c)/2, 则三角形的面积公式为 area=(s(s-a)(s-b)(s-c) )1/2 格式 : sqrt(x);/* x是一个浮点数 */ 源处:math.h 文件。
printf的输出示例-2
第3章 算法的基本控制结构
C程序设计与应用教程 3.1 C语句概述
3.1.1 C语言的基本语句 2.控制语句 表3-1 C语言的控制语句汇总 if~else switch( )~ while( )~ do~while( ) for( )~ continue break return goto
选择结构 条件语句 控制 开关语句 while循环语句 循环结构 do循环语句 控制 for循环语句 结束本次循环语句 其它控制 终止执行switch或循环语句 语句 从函数返回语句 转向语句
在C语言的基本数据类型中,没有逻辑型。C语言规定: 任何非0的数据都是“真”,0为“假”。逻辑运算的运 算结果和关系运算的结果一样,为“真”即为1,为“假” 即为0。
表达式中如果出现了多个逻辑运算符,C语言规定其优 先级次序为:!最高,&&次之,||最低。逻辑运算符具 有自左至右的结合性。
C程序设计与应用教程 3.3 选择结构的流程控制
C程序设计与应用教程 3.1 C语句概述
3.1.2 三种基本结构和流程控制语句
S1 S2
Y S1
条 件
N S2
条 件Y S1
N
(a)
(b)
(c)
图3-1 三种基本的结构
C程序设计与应用教程 3.1 C语句概述
3.1.2 三种基本结构和流程控制语句
C语言中的语句是按它们在程序中出现的顺 序逐条执行的; 选择结构的实现有if语句和switch语句; 循环结构的实现有while语句、do~while语 句和for语句。
表达式 真 语句
假
图 3-2 不 含 else 的if 语句的执行 流程
C程序设计与应用教程 3.3 选择结构的流程控制
3.3.2 if 语句 比较如下①②两种情况,哪个可以真正实现:如果 x小于y,则交换x和y的值?why???
c语言程序设计,(控制语句)
3第三章控制语句第三章控制语句3.1程序的基本结构程序的基本结构有三种:顺序结构、分支结构、循环结构前面的例子都是顺序结构,大量的实际问题需要通过各种控制流程来解决。
分支和循环结构的控制语句有:条件语句:if语句开关语句:switch语句循环语句:for语句、while语句、do while语句转移语句:break、continue、goto语句•简单语句:均是以“;”结尾的语句。
z=x+y;c=getchar();•复合语句:复合语句是用花招号“{ }”把“说明”和若干个有序的简单语句组合在一起而构成的语句集合。
其一般形式是:{<内部数据说明><语句表>}•复合语句实例:{int i,j,k;i=i+1;j=j*2;i=k<<j;}•空语句:空语句的含义是什么动作都不执行,语句本身仅有一个分号。
while (putchar(getchar())!='\0'); 空语句选择结构(分支结构)◆“选择结构”也可以叫做“分支结构”。
在一个合理的“选择结构”中,总是先进行某个条件的判断,然后根据判断的结果选择执行预先设定的操作。
◆要想实现“选择结构”,需要2个条件:①能表达条件判断的运算符;②能实现判断并选择的控制语句。
A B?Yes No ab3.3 if 语句if 语句的三种形式 if 语句的嵌套if 语句◆if 语句是一种选择控制语句,而且是条件分支控制语句,即总是先进行一个条件的判断,然后根据判断的结果(成立或不成立)选择执行预先设定的操作。
◆if 语句中的条件判断都是用一个表达式来表示的。
在执行if语句时,会求解这个表达式的逻辑值,因为这个表达式的逻辑值代表了判断的结果:值为“T”,判断成立,值为“F”,判断不成立。
因此,if 语句根据判断的结果(成立或不成立)选择执行预先设定的操作,实际上是根据条件判断表达式的逻辑值是“真”是“假”来选择的。
第3章 Python流程控制
条件表达式
为了简化简单的条件判断,python中提供了条件表达式,语法结构如下:
表达式1 if 布尔表达式 else 表达式2
如果布尔表达式为 True,那么表达式的结果就是表达式1;否则,表达式的结果就是表达式2。
若想将变量number1和number2中较大的值赋给max,可以使用下面的条件表达式简洁地完成。
else:
grade = "不及格"
print(score, "对应的等级为:", grade)
Python流程控制
条件语句嵌套
条件语句
条件语句中还可以嵌套条件语句,用于做进一步的判断。条件语句嵌套时,通过缩进查看条件 语句的层次关系。理论上说,嵌套的层次没有限制,但实际编程中,应尽可能避免多层次嵌套。
多分支if-elif-else语句语法形式如下: if 条件表达式1 : 语句体1 elif 条件表达式2 : 语句体2 …… elif 条件表达式n : 语句体n else: 语句体n+1
False
False
表达式1
表达式2
False
False
表达式n
True
语句块1
语句块2
带有else子句的for语句的完整形式如下: for 控制变量 in 可遍历序列: 循环体 else: 语句体
执行循环体
是否遇到
是
break语句
否
执行else语句
课后练习题
阅读以下程序代码,思考程序执行结果:
sum = 0 for i in range(10):
if i % 4 == 0: break
while 语句 在某条件下循环执行某段程序,重复处理某一任务。基本形式为:
C语言_第3章
简单程序的流程一般分为顺序结构、选择结构和循环结 构。其中顺序结构是最基本的控制结构,其包含的语句 是按照书写的顺序执行,且每条语句都将被执行。
程序流程如图3.1所示, #include<stdio.h> 语句按书写顺序执行。 main( ) 先执行A,再执行B。 {int a=10,x=5,y=6;
三、复合语句
用一对花括号,把若干条语句括起来,
就形成了一条复合语句。形式如下:
{[内部数据描述语句]
其中定义的变量是
语句1; …… 语句n;}
复合语句结束的 “}”之后,不需
局部变量,仅在复 合语句中有效。
要再加分号。
花括号中的语句,可以是简单语句、空语句、复合 语句、流程控制语句,所有这些语句括在一起,在 语法上看成是一条语句,执行时顺序执行花括号中 的每条语句。复合语句多用于流程控制语句中。
printf(“\n%d,%d”,a+i,i++);}
四、格式输入函数 格式输入函数一般形式 scanf(“格式控制字符串”,地址列表); 功能:按指定的格式从键盘上把数据输入到指定的 变量之中 。 在scanf语句的格式控制字符串中,有两类字符: 普通字符:必须按原样输入,不能省略; 格式说明部分:由%引导的格式字符串组成。
scanf语句格式说明部分的一般格式为: %[*][width][F|N][h|L]type type是必须的,表示输入后转换的数据类型。
d(D) o(O) x(X) i(I) u(U)
c s f,e,g F,E,G n
%
十进制整数 八进制整数 十六进制整数 自动根据数头分辨十、八、十六进制 无符号十进制整数 单个字符 字符串 实数
电大C语言程序设计 第3章 流程控制语句
第3章 流程控制语句 章 (二) 教学要求 二 理解:各种语句的定义格式; 理解:各种语句的定义格式; 应用:分析程序, 应用:分析程序,按照解决问题的需要 编写出相应程序。 编写出相应程序。
第3章 流程控制语句 章 3.1 流程控制语句概述 1.流程控制:控制语句执行的顺序 流程控制: 流程控制 2.流程控制的方式 三种 流程控制的方式(三种 流程控制的方式 三种) ①顺序控制 ②条件分支控制 ③循环控制 3. 程序结构的分类 ①顺序结构 条件分支结构: 语句和switch语句实现。 语句实现。 ②条件分支结构:由if语句和 语句和 语句实现 循环结构: 语句、 语句和 语句和do…while ③循环结构:由while语句、for语句和 语句 语句实现。 语句实现。
第3章 流程控制语句 章 3.4 for语句 语句 6. 应用编程举例 例3_5:假设平均值、方差和均方差用变量 :假设平均值、方差和均方差用变量v, f和t表示,则有: 表示, 和 表示 则有:
1 1 2 2 v = ∑xi f = ∑xi − v t = f n i=1 n i=1
n
n
第3章 流程控制语句 章 3.4 for语句 语句 6. 应用编程举例 例3_6:由勾股定理可知,在一个直角三角形 :由勾股定理可知, 两条直角边a和 与斜边 与斜边c的关系为 中,两条直角边 和b与斜边 的关系为 a2+b2=c2,编一程序求出每条直角边均不大于 编一程序求出每条直角边均不大于 30的所有整数解。如(3,4,5),(5,12,13)都是解。 的所有整数解。 都是解。 的所有整数解 都是解 之间的所有素数。 例3_7:编一程序求出 :编一程序求出2~99之间的所有素数。 之间的所有素数
第3章 流程控制语句 章 3.2 if语句 语句 4.if语句嵌套 语句嵌套 c++规定,else总是和其前面最近的尚未配 规定, 规定 总是和其前面最近的尚未配 对的且可见的if配对。 对的且可见的 配对。 配对 (1)if(p1) if(p2) s1 else s2 (2)if(p1) { if(p2) s1 s2 } else p3 (3)if(p1) s1 else if(p2) s2 else s3
第3章 运算符与流程控制
课件制作人:明日科技
异或运算符“^”
运算符“^”用于对逻辑值进行异或运算,当 运算符的两侧同时为true或false时,运算结果为 false,否则运算结果为true。 例如下面的代码:
赋值运算符的运算顺序为从右到左。例如在 下面的代码中,首先是计算表达式“9412 + 75” 的和,然后将计算结果赋值给变量result:
int result = 9412 + 75;
课件制作人:明日科技
赋值运算符
如果两个变量的值相同,也可以采用下面的 方式完成赋值操作:
int x, y; x = y = 0; // 声明两个int型变量 // 为两个变量同时赋值
课件制作人:明日科技
3.1.2 算术运算符
算术运算符支持整数型数据和浮点数型数据 的运算,当整数型数据与浮点数型数据之间进行 算术运算时,Java会自动完成数据类型的转换, 并且计算结果为浮点数型。
运 算 符 +
* / %
功 能 加法运算
减法运算 乘法运算 除法运算 求余运算
举 例 10 + 7.5
System.out.println(7.5 / 0); System.out.println(-7.5 / 0); System.out.println(7.5 % 0); System.out.println(-7.5 % 0); // 输出的运算结果为Infinity // 输出的运算结果为-Infinity // 输出的运算结果为NaN // 输出的运算结果为NaN
Python程序设计第3章+程序控制结构
3.1 程序的基本结构
图3-1 流程图的7种基本元素
3.2 顺序结构
顺序结构是程序的基础,是程序设计中最简单的,只要按照解决问题的 顺序写出相应的语句就可以。它的执行从上而下,依次执行,如图3-2所示。
图3-2 顺序结构的流程图
【例3.1】计算军犬速度
军犬的耐力是非常有名的。有关资料 显示,第一次世界大战期间为传达命令, 一只军犬50分钟跑完了21.7km的路程。算 一算,这只军犬平均每分跑多少米?
3.5 实例:控制结构灵活运用
3.5.2 猜数字游戏
【例3.7】编写猜数字游戏程序。
#猜数字游戏 import random x=random.randint(1,10) for i in range(1,4):
m=eval(input("请输入一个整数:")) if x == m:
print("恭喜,猜对了,一共猜了{}次".format(i)) break elif m<x: print("猜小了") else: print("猜大了") if i == 3: print("游戏结束")
根据会员情况,输出最后应付的金额。
#不同消费者买单3 #会员编号(2:金卡会员,1:普通会员,其他:非会员) #不同的会员消费者买单 consume=eval(input(“请输入消费额:”)) flag=int(input(“请输入会员编号:”)) if flag == 2:
consume *= 0.9 elif flag ==1:
consume *= 0.95 else:
consume *= 0.99 print("用户应付费: {:.2f}".format(consume))
第3章 流程控制
if嵌套的执行流程
✎ 目录页
3.1 条件语句 3.2 实训案例 3.3 循环语句 3.4 实训案例 3.5 跳转语句 3.6 阶段案例——房贷计算器
✎
Hale Waihona Puke 3.2.1 计算器计算器极大地提高了人们进行数字计算的效 率与准确性,无论是超市的收银台,还是集 市的小摊位,都能够看到计算器的身影。计 算器最基本的功能是四则运算。 本实例要求编写代码,实现计算器的四则运 算功能。
✎
3.2.2 猜数字
猜数字由两个人参与,一个人设置一个数字,一个人猜 数字,当猜数字的人说出一个数字,由出数字的人告知 是否猜中:若猜测的数字大于设置的数字,出数字的人 提示“很遗憾,你猜大了”;若猜测的数字小于设置的 数字时,出数字的人提示“很遗憾,你猜小了”;若猜 数字的人在规定的次数内猜中设置的数字,出数字的人 提示“恭喜,猜数成功”。 本实例要求编写代码,实现遵循上述规则的猜数字程序。
✎
3.3.3 循环嵌套
while循环嵌套是指while语句中嵌套了 while或for语句。以while语句中嵌套while 语句为例,while循环嵌套的语法格式如下:
while 循环条件1: 代码段1 while 循环条件2: 代码段2 ......
# 外层循环 # 内层循环
格式
✎
3.3.3循环嵌套
if-else语句的执行流程
✎
3.1.3 if-elif-else语句
Python除了提供单分支和双分支条件语句外,还提供多分支条件语句if-elif-else。 多分支条件语句用于处理单分支和双分支无法处理的情况。
if 判断条件1: 代码段1
elif 判断条件2: 代码段2
elif 判断条件3: 代码段3
第3章 程序控制结构
if嵌套语句也可以实现多分支的选择问题,但如果分支较 多,程序代码行数也随之曾多,从而降低了程序的可读性, 造成程序容易产生错误。C语言提供了switch语句可以解决 这一问题,switch语句直接处理多分支选择,而且可读性 较好。它的一般形式如下:
switch(表达式) { case 常量表达式1: 语句1; break; case 常量表达式2: 语句2; break; … case 常量表达式n: 语句n; break; default: 语句n+1; }
T
条件是否成立
F
F
T 语句序列
语句2
语句1
语句2
结束
结束选择
循环结束
3.2 语句
程序的执行部分是由语句构成的。执行 语句的过程就是实现程序功能的过程。语 句是C语言的基本执行单位。
3.2.1声明语句
声明语句主要用来说明合法标识符, 以便能在程序中合法使用它们。在C 语言程序设计中,任何用户自定义 的函数、变量和符号常量都必须遵 循先声明后使用的原则。 声明语句的语法格式如下: 数据类型符 用户标识符;
多分支结构流程图
表达式1
T
语句1
F
表达式2 1
T
语句2 1
F
表达式3
T
语句3
F
表达式n
T
语句n
F 语句 F n+1
输入百分制成绩,输出对应成绩等级
#include <stdio.h> void main() { int m; printf("Please input mark:"); scanf("%d",&m); if(m>=90) printf("A\n"); else if(m>=80) printf("B\n"); else if(m>=70) printf("C\n"); else if(m>=60) printf("D\n"); else }
《Java程序设计基础》第3章:流程控制
控制循环
控制循环是在循环执行过程中改变循环条件或跳出循环的语句。
1 break语句
break语句用于跳出当前循 环或switch语句。
2 continue语句
3 return语句
continue语句用于跳过本次 循环中的剩余代码,进入下 一次循环。
return语句用于结束方法的 执行,并返回一个值。
分支结构
分支结构根据条件的真假选择执行பைடு நூலகம்同的代码块。
if语句
if语句根据条件是否成立来执行不同的语句块。
if-else-if语句
if-else-if语句可以根据多个条件判断选择执行不同 的代码块。
if-else语句
if-else语句根据条件的真假执行不同的代码块。
switch语句
switch语句根据某个表达式的值选择执行相应的代 码块。
方法的返回值
方法可以有返回值,用于将计算结果或特定的值 返回给调用者。
方法的参数传递
方法可以接受参数,用于传递数据给方法进行处 理。
数组的基本概念
数组是一种存储多个相同类型元素的数据结构。
声明数组
声明数组即定义数组的类型和名称。
初始化数组
初始化数组即为数组的元素赋初值。
数组的遍历
数组的遍历即对数组中的每个元素进行访问和操 作。
方法和数组
方法和数组是在流程控制中广泛使用的工具。
静态方法
静态方法是属于类的,可以直 接调用而不需要创建对象。
非静态方法
非静态方法是属于对象的,需 要通过对象来调用。
方法重载
方法重载是指在一个类中定义 多个同名方法,但参数类型或 个数不同。
递归方法
递归方法是指在方法内部调用自身的方法。
流程控制语句思政
流程控制语句思政
流程控制语句在计算机编程中是用来控制程序执行顺序的语句,它们可以根据一定的条件或规则选择执行不同的代码块或跳转到不同的位置。
思政是指思想政治教育,是对人的思想、政治意识和道德观念的培养和教育。
流程控制语句可以用来实现思政教育的一些功能,例如:
1. 条件判断:使用条件语句(例如if语句)可以根据一定的条件决定是否执行一些思政教育活动或是否给予相关的奖励或惩罚。
2. 循环控制:使用循环语句(例如while和for循环)可以重复执行一定的思政教育活动,例如定期进行班会、党课等,不断加强学生的思想教育。
3. 跳转控制:使用跳转语句(例如break和continue语句)可以在特定的条件下跳出或继续执行一些思政教育活动,例如在紧急情况下立即召开思政会议或继续进行相关的思政教育工作。
综上所述,流程控制语句可以在程序中实现思政教育的一些功能,通过合理使用这些语句可以更好地进行思政教育。
C语言(第三章)(上)
• 早期 语言不提供专门的逻辑(布尔)类型,规定用非 值表示“真”,用0 早期C语言不提供专门的逻辑 布尔)类型,规定用非0值表示 语言不提供专门的逻辑( 值表示“ 值表示“ 值表示“假”。 • 表达式,只要值为非 (包括负数),就说明其为“真”;只要其值为 ,就 表达式,只要值为非0(包括负数),就说明其为“ ),就说明其为 只要其值为0, 说明其为“假”。从而给判断带来很大的灵活性。 说明其为“ 从而给判断带来很大的灵活性。 • 在C99中,增加了_Bool类型,并增加了头文件<stdbool.h>,在其中定义了 中 增加了 类型,并增加了头文件 , 类型 存储1, 存储0。 宏bool、true和false,用true存储 ,用false存储 。 、 和 , 存储 存储
注意: 注意:
•
中是允许的。 (1)表达式 >2>7>8在C中是允许的。 )表达式5> > > 在 中是允许的 整个关系表达式的值为多少?? 整个关系表达式的值为多少?? (2)关系表达式的值是整型数 或1,可以看成是一种整型表 )关系表达式的值是整型数0或 , 达式。 达式。 若有: 如,若有: int i=1, j=7,a; a=i+(j%4!=0); 则a的值为?? 的值为?? 的值为 值参与运算: (3)字符在关系表达式中出现按照其 )字符在关系表达式中出现按照其ASCII值参与运算: 值参与运算 的值分别为?? 如:‘a’>’A’ ‘b’==‘B’-32的值分别为?? 的值分别为 不相等”的判别, (4)避免对两个实数表达式作“相等”或“不相等”的判别, )避免对两个实数表达式作“相等” 考虑用其差绝对值之差小于一个很小的值的形式: 考虑用其差绝对值之差小于一个很小的值的形式: 如: fabs (1.0/3.0* 3.0-1.0)<1e-5 < 在区间[ ] 使用a< (5)表示 在区间[a,b]中,使用 <=x && x<=b )表示x在区间 < 例如: 例如: -10<=x && x<=10 < < 若使用: 若使用:-10≤x≤10。 。 若x=10,结果为?? ,结果为?? 若x=100,结果为?? ,结果为?? 若x=-100,结果为?? ,结果为??
VB课本习题答案第三章
第3章程序流程控制3.1 填空题1.设变量r 表示圆的半径,则计算圆的面积并赋给变量s使用的赋值语句为( s=3.14159*r*r )。
2.给命令按钮Command2的Caption属性赋予字符串“退出”使用的赋值语句为( Command2.Caption="退出").3.为了求n的阶乘,要求用户输入n的值。
程序使用InputBox函数输入,要求对话框提示信息为“请输入一个求阶乘的数:”,标题为“求数的阶乘”,并且正确地把输入的信息转换为数值存放到变量n中,则使用的赋值语句为( n=val(InputBox("请输入一个求阶乘的数:","求数的阶乘"))。
4.如果使用MsgBox对话框显示提示信息“退出本系统?”,并显示“是(Yes)"和“否(No)”两个按钮,显示图标“?"号,指定第一个按钮为默认值以及标题为“提示信息",则调用MsgBox 函数的形式为( MsgBox("退出本系统?",4+32+0,"提示信息")).5.如果使用MsgBox对话框显示提示信息“文件未找到!”,并显示“确定”按钮、图标“!"号和标题“文件查找",则使用的MsgBox语句为( MsgBox"文件未找到",0+48+0,"文件查找")。
6.要在当前窗体Form和立即窗口输出字符串“Visual BASIC 6。
0”使用的Print方法分别是( Print “Visual BASIC 6.0”)和( Debug。
Print “Visual BASIC 6。
0” ).7.使用Print方法时,若用逗号分隔, 则按( 标准)格式输出各表达式的值,若用分号分隔,则按( 紧凑 )格式输出各表达式的值.8.注释语句是一个( 非执行)语句,VB不对它们进行编译,对程序的执行结果没有任何影响。
9.判别变量i是否为偶数,若为偶数就把它显示出来。
使用单行结构条件语句为( If i Mod 2=0 Then print x )。
c语言第3章
3.2.2 例题与分析
例题3.3 根据输入的加或减运算符,输出任意两个
分析本题的含义是根据用户从键盘输入的加运算符 或减运算符,在屏幕上输出相应的运算结果。首先 对题目进行分析和分解,然后再进行代码设计。问 题分析如图3.1
整型变量iop1, iop2 整型变量result 字符型变量operator
1 (x 0) y 0 (x 0)
1 (x 0)
为了避免此种情况,采用办法与情况1相似。改变 if...else的匹配关系,将情况2的代码修改如下,即 可正确表示符号函数。
if(x < 0) y = -1;
else if (x!=0) y = 1;
else y = 0;
例题3.6 求一元二次方程ax2+bx+ c = 0 分析由代数知识可知,方程的解有3种不同的情况,
/* 获得运算符 */
printf("please enter tow numbers:");/* 获得操作数 */
scanf("%d%d", &iop1, &iop2); if(operator == '+')/*由运算符决定不同运算*/
result = iop1 + iop2;
else
result = iop1 - iop2; printf("\n%d %c %d = %d\n", iop1, operator, iop2, result); /* 输出结果 */ }
方法1 main() {
int x, y; printf("please input a integer:"); scanf("%d", &x); if (x > 0) y = 1; else if (x == 0)
第3章 基本的程序流程控制结构
计算机程序设计基础(C语言) 3.3 选择结构的流程控制
3.3.1 条件判断
在顺序结构中,各语句是按排列的先后次序顺序执行的, 是无条件的,不必事先作任何平判断。但在实际中,常常 有这样的情况:要根据某个条件是否成立决定是否执行指 定的任务。例如: 如果你在家,我去拜访你; (需要判断你是否在家) 如果考试不及格,要补考; (需要判断是否及格) 周末我们去郊游; (需要判断是否是周末) 如果x>y,输出x,否则输入y。 (需要判断x是否大于y) 判断的结果应该是一个逻辑值:“是”或“否”,在计算 机语言中用“真”和“假”表示。例如,当x>y时,满足 “x>y”条件,就称条件“x>y”为真,如果x≤y,不满足 “x>y”条件,就称条件“x>y”为假。
}
计算机程序设计基础(C语言)
例3.3 求4个数中的最大值。
算法分析:程序的功能是输入4个数给a,b, c,d。把a先赋予变量max,再用语句判别 max和b的大小,如max小于b,则把b赋予 max。同理,max继续跟c和d比较即可使 得max中总是大数,最后输出max的值就 是4个数中的最大值。
计算机程序设计基础(C语言)
在判定两个浮点数是否相等时,由于计算机存储上 出现的误差,会出现错误的结果。例如: 1.0/3.0*3.0==1.0 在数学上显然应该是一个恒等式,但由于1.0/3.0得 到的值的有效位数是有限的,并不等于,因此上 面关系表达式的值为0(假),而不为1(真)。 所以应避免对两个实数表达式作“相等”或“不 相等”的判定。上式可以改写为: fabs(1.0/3.0*3.0-1.0)<1e-5
计算机程序设计基础(C语言) 3.3 选择结构的流程控制
VB6.0理论第三版第3-4章
以下部分不要
⑶ MsgBox函数和MsgBox过程
MsgBox函数格式:变量% = MsgBox (prompt [, buttons] [,title]) MsgBox过程格式:MsgBox (prompt [, buttons] [,title]) 功能:打开一个消息框,等待用户选择一个按钮。MsgBox函数返回所 选按钮对应的整数值,以便告诉用户单击哪一个按钮。若不需要返回 值,则可作为MsgBox过程使用。 说明:① “prompt‖和“title‖的含义与InputBox()函数中对应的参数 相同。 ② “buttons(按钮)”:可选项,为整型参数。用来设定要显示的按 钮的数目、类型和出现在消息框中的图标类型。 ③ “变量%‖: 返回值。当用户按下消息框按钮时,系统将返回按键 相对应的数值,利用这个返回信息,用户可以在以后的程序中作出不 同的响应。例如,在打印文件时,如果选择“确定”按钮,那么程序 就应该打印文件;如果选择“取消”按钮,程序就不再打印文件;如 果选择“重试”,那么程序就应该能重新开始打印文件。
⑶ End语句 格式:End 功能:在过程中关闭代码执行、关闭以Open语句打开的文件 并清除变量,停止执行程序。 说明: ① End语句可以放在过程中的任何位置。 ② End语句在执行时会重新设置所有模块级变量和所有模块 的静态局部变量。如果不想改变这些变量的值,应将End语 句改为Stop语句,此时在保留这些变量值的基础上可以恢复 执行。 ③ End语句提供的是一种强迫中止程序的方法。VB程序正常 结束应该卸载所有的窗体,只要没有其他程序引用该程序公 共类模块创建的对象并无代码执行,程序将立即关闭。
第3章 流程控制语句
本章主要内容:
3.1 顺序结构程序设计 3.2 选择结构程序设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.1 条件语句
3.1.3 if-elif语句
• if-elif语句的执行流程,如图所示。
3.1 条件语句
3.1.3 if-elif语句
• 接下来演示if-elif语句的用法,如例所示。
1 score = 80
2 if 90 <= score <= 100:
3
print("学神:成绩爆表!")
4 elif 80 <= score < 90:
• 在while语句中,当条件表达式为True时,就重复执行语句块;当条件表达式为 False时,就结束执行语句块。while语句的语法格式如下:
while 条件表达式: 语句块 # 此处语句块也称循环体
• while语句中循环体是否执行,取决于条件表达式是否为True。当条件表达式为 True时,循环体就会被执行,循环体执行完毕后继续判断条件表达式,如果条件 表达式为True,则会继续执行,直到条件表达式为False时,整个循环过程才会执 行结束。while语句的执行流程,如图所示。
执行的语句块,其语法格式如下:
if 条件表达式 1: 语句块 1 # 当条件表达式 1 为 True 时,执行语句块 1
elif 条件表达式 2: 语句块 2 # 当条件表达式 2 为 True 时,执行语句块 2
... else:
语句块 n # 当以上条件表达式均为 False 时,执行语句块 n
3.1.1 3.1.2 3.1.3 3.1.4
3.1 条件语句
if语句 if-else语句 if-elif语句 if语句嵌套
3.1 条件语句
• 条件语句可以给定一个判断条件,并在程序执行过程中判断该条件是否成立。程 序根据判断结果执行不同的操作,这样就可以改变代码的执行顺序,从而实现更 多功能。例如,用户登录某电子邮箱软件,若帐号与密码都输入正确,则显示登 录成功界面,否则显示登录失败界面,具体如图所示。
3.2 循环语句
3.2.1 while语句
• 接下来演示while语句的用法,如例所示。
1 i, sum = 1, 0
2 while i < 101:
3
sum += i
4
i += 1
5 print("1 + 2 + ··· + 100 = %d"%sum)
• 运行结果如图所示。
3.2 循环语句
3.2.2 for语句
11
print("a、b、c 中最大的值为%d"%c)
返回目录
3.2.1 3.2.2 3.2.3 3.2.4
3.2 循环语句
while语句 for语句 while与for嵌套 break语句
返回目录
3.2.5 3.2.6 3.2.7
3.2 循环语句
continue语句 else语句 pass语句
3.1 条件语句
3.1.1 if语句
• 接下来演示if语句的用法,如例所示。
1 score = 90
2 if score >= 60:
3
print("真棒!")
4 print("您的分数为%d"%score)
• 如果将变量score的值改为50,则运行结果如图所示。
• 在例中,第2行判断socre的值是否大于或等于60。如果socre的值大于或等于60, 执行第3行,否则不执行第3行。程序执行完if语句后,接着执行第4行代码。
语句,如例所示。
1 for i in range(1, 10):
2
j=1
3
while j <= i:
4
print("%d×%d = %-3d"%(i, j, i*j), end = ' ')
5
j += 1
6
print(end = '\n')
• 接下来演示for语句中嵌套for语句,如例所示。
1 for i in range(1, 10):
2
for j in range(1, i + 1):
3
print("%d×%d = %-3d"%(i, j, i*j), end = ' ')
4
print(end = '\n')
3.2 循环语句
3.2.4 break语句
• break语句可以使程序立即退出循环,转而执行该循环外的下一条语句。如果 break语句出现在嵌套循环中的内层循环中,则break语句只会跳出当前层的循环。
1 a, b, c = 5, 8, 3
2 if a >= b:
3
if a >= c:
4
print("a、b、c 中最大的值为%d"%a)
5
else:
6
print("a、b、c 中最大的值为%d"%c)
7 else:
8
if b >= c:
9
print("a、b、c 中最大的值为%d"%b)
10 else:
3.1 条件语句
3.1.3 if-elif语句
• 生活中经常需要进行多重判断,例如,考试成绩在90~100区间内,称为成绩爆表; 在80~90区间内,称为成绩优秀;在60~80区间内,称为成绩及格;低于60的称 为成绩堪忧。
• 在程序中,多重判断可以通过if-elif语句实现,其语法格式如下:
if 条件表达式 1: 语句块 1 # 当条件表达式 1 为 True 时,执行语句块 1
第三章 流程控制语句
主讲人:杨中杰 计算机技术与信息管理系
条件语句
☞点击查看本小节知识架构
循环语句
☞点击查看本小节知识架构
小案例
☞点击查看本小节知识架构
学习目标
1 掌握if-else语句
或if-elif语句
掌握while语 2
句
掌握break语句
4
与continue
语句
掌握for语句 3
返回目录
3.1 条件语句
3.1.2 if-else语句
• 在使用if语句时,它只能做到满足条件时执行其后的语句块。如果需要在不满足条 件时执行其他语句块,则可以使用if-else语句。
• if-else语句用于根据条件表达式的值决定执行哪块代码,其语法格式如下:
if 条件表达式: 语句块 1 # 当条件表达式为 True 时,执行语句块 1
else: 语句块 2 # 当条件表达式为 False 时, 执行语句块 2
• 如果条件表达式的值为True,则执行其后的语句块1,否则执行语句块2。if-else 语句的执行流程如图所示。
3.1 条件语句
3.1.2 if-else语句
• 接下来演示if-else语句的用法,如例所示。
1 score = 80
• 运行结果如图所示。
其用法,如例所示。
1 sum = 0
2 for i in range(1, 101):
3
sum += i
4 print("1 + 2 + ··· + 100 = %d"%sum)
3.2 循环语句
3.2.3 while与for嵌套
• while语句中可以嵌套while语句或for语句,接下来演示while语句中嵌套while语
else: if 条件表达式 3: 语句块 3 else: 语句块 4
# 嵌套 if 语句 # 嵌套 if-else 语句
# 嵌套 if 语句 # 嵌套 if-else 语句
• 注意if语句嵌套有多种形式,在实际编程时需灵活使用。
3.1 条件语句
3.1.4 if语句嵌套
• 接下来演示if嵌套语句的使用,如例所示。
3.2 循环语句
• 循环的意思就是让程序重复地执行某些语句。在实际应用中,当碰到需要多次重 复地执行一个或多个任务时,可考虑使用循环语句来解决。循环语句的特点是在 给定条件成立时,重复执行某个程序段。通常称给定条件为循环条件,称反复执 行的程序段为循环体。
3.2 循环语句
3.2.1 while语句
• for语句可以循环遍历任何序列中的元素,如列表、元组、字符串等,其语法格式
如下:
for 元素 in 序列: 语句块
• 其中,for、in为关键字,for后面是每次从序列中取出的一个元素。接下来演示
for语句的用法,如例所示。
1 for word in "Python":
2
print(word)
• 当需要遍历数字序列时,可以使用range()函数,它会生成一个数列,接下来演示
• if语句嵌套是指if、if-else中的语句块可以是if或if-else语句,其语法格式如下:
# if 语句 if 条件表达式 1:
if 条件表达式 2: 语句块 2
if 条件表达式 3: 语句块 3
else: 语句块 4
# if-else 语句 if 条件表达式 1:
if 条件表达式 2: 语句块 2
5
print("学霸:成绩优秀!")
6 elif 60 <= score < 80:
7
print("学民:成绩及格!")
8 elif 0 <= score < 60:
9
print("学渣:成绩堪忧!")
10 print("您的分数为%d"%score)
• 此外,if-elif语句后还可以使用else语句,用来表示if-elif语句中所有条件不满足时