最新第4章--三种控制结构程序设计
结构化程序流程图的三种基本控制结构
结构化程序流程图的三种基本控制结构下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor.I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!理解结构化程序流程图的三大基本控制结构在计算机编程中,结构化程序设计是一种重要的编程范式,它强调程序的逻辑应该通过清晰、有序的控制结构来表达。
第四章 控制结构程序设计.ppt
IF <条件> Then <语句组>
2019年8月21
感谢你的观看
12
块结构条件语句 单分支和双分支选择的块形式
x < y False
True
t=x x=y y=t
T
表达式
F
语句组1
语句组2
If <条件> Then
<语句组>
End If
2019年8月21
If <条件> Then <语句组1>
感谢你的观看
14
条件语句
a=3 b=2 if a>b then
msgbox “a大于b” Else
msgbox “a小于b” End if
2019年8月21
感谢你的观看
15
条件语句
a=3 b=2 c=1 if a>b and a>c then
msgbox “a最大” End if
2019年8月21
If Ucase(strC) >= "A" And Ucase(strC) <="Z" Then Print strC + "是字母字符"
ElseIf strC >="0" And strC <= "9" Then Print strC + "是数字字符"
Else Print strC + "是其它字符"
End If
2019年8月21
感谢你的观看
21
程序的基本组成
程序设计的一般步骤:
第四章三种基本结构程序设计
>0 初值<终值 =1 时,可省略 步长 <0 初值>终值 =0 死循环
4.2.3 循环结构实例
例: For I=2 To 13 Step 3 Print I , Next I Print “I=“, I
输出I的值分别为: 2 5 8 11 出了循环输出为: I=14
4.2.3 循环结构实例
2、 Do…Loop循环语句
4.2.2 选择结构实例
例 输入一学生成绩,评定其等级。方法是:90~100分为 “优秀”,80~89分为“良好”,70~79分为“中等”, 60~69分为“及格”,60分以为“不合格” 使用IF语句实现的程序段如下: If x>=90 then Print "优秀" ElseIf x>=80 Then Print "良好" ElseIf x>=70 Then Print "中等" ElseIf x>=60 Then Print "及格" Else Print "不及格" End If
不同分支中执行某一分支的相应操作(程序块),并且任何情 况下总有“无论条件多寡,必择其一;虽然条件众多,仅选其 一”的特性。
4.2.2 选择结构实例
1. If…Then语句(单分支结构)
If <表达式> Then
语句块 End If
或
If <表达式> Then <语句块>
例:已知两个数x和y,比较它们的大小,使得x大于y. If x<y Then t=x : x=y: y=t End If 或 If x<y Then t=x: x=y: y=t
第四章 结构化程序设计的三种结构
第四章结构化程序设计的三种结构4.1 顺序结构程序设计一、结构化程序设计的程序结构顺序结构、分支结构/选择结构、循环结构二、C语言语句1、9种控制语句2、表达式语句3、特殊语句三、格式化输出--printf()函数printf()函数的作用:向计算机系统默认的输出设备(一般指终端或显示器)输出一个或多个任意类型的数据。
printf()函数的一般格式printf("格式字符串" [,输出项表]);1、"格式字符串"也称"转换控制字符串",可以包含三种字符(1)格式指示符。
格式指示符的一般形式如下:%[标志][宽度][.精度][F|N|h|L][类型]常用的标志字符如表3-1所示,常用的宽度指示符如表3-2所示,常用的精度指示符如表3-3所示,长度修饰符如表3-4所示,类型转换字符如表3-5所示。
(2)转义字符'\n'就是转义字符,输出时产生一个"换行"操作。
转义字符通常起控制作用(3)普通字符──除格式指示符和转义字符之外的其它字符。
格式字符串中的普通字符,原样输出。
例如printf("radius=%f\n", radius);语句中的"radius="是普通字符。
2.输出项表输出项表是可选的。
如果要输出的数据不止1个,相邻2个之间用逗号分开。
下面的printf()函数都是合法的:(1)printf("I am a student.\n");(2)printf("%d",3+2);(3)printf("a=%f b=%5d\n", a, a+3);必须强调:"格式字符串"中的格式指示符,必须与"输出项表"中、输出项的数据类型一致,否则会引起输出错误3、格式指示符输出不同类型的数据,要使用不同的类型转换字符。
程序结构
4.3 循环结构程序设计
For 循环变量=初值 To 终值 [Step 步长] 语句块 [ Exit For ] For Each 元素变量 In 数组或集合 语句块 Next 元素变量 * 内循环变量与外循环变量不能同名 * 外循环必须完全包含内循环,不能交叉 先判断后执行 While循环 While 条件 Do While 条件 语句块 Loop Do Until 条件 语句块 Loop 先执行后判断 Do 语句块 Loop While 条件 Do 语句块 Loop Until 条件
例如: Case 1 To 10 Case 2,4,6,8, Is>10
应用例
例题5-1:设计程序,回答“天下事有难易乎?”的提问,根据用户的不同 选择,现实不同的语句。 例题5-2:已知某书店图书均九折销售,一次购书100元以上(包括100元) 打八五折。 例题5-3:If语句的嵌套 在例5-2的基础上,实现购书金额300元(含)以上打八二折。 例题5-4:用块If的嵌套语句来描述博弈论中的经典案例“囚徒困境”。 例题5-5:ElseIf语句 设计程序,鉴定成绩,输入百分制成绩,显示相应的五级制评定。 例题5-6:行 If 语句 设计程序,求最大值:要求可以输入任意的3个数,并能找出其中的最大值。 例题5-7:用Select Case语句代替ElseIf语句来实现成绩评定。
应用举例
例题6-1:编写程序,实现累加:要求使用For循环计算从1~100的自然数之 和。 例题6-2:编写程序,实现阶乘:要求使用For循环求N!(N为自然数)。 例题6-3:修改例6-2,要求显示For循环语句在执行过程中的具体情况。
例题6-4:编写程序,求π的近似值。
例题6-5:While循环 编写程序,求总成绩,可以实现输入若干成绩,并计算总成绩。
python程序的三种控制结构
python程序的三种控制结构程序的三种控制结构什么是控制结构?"""程序有三种基本结构组成:顺序结构、分⽀结构、循环结构。
任何程序都是由这三种基本结构组成。
顺序结构是程序按照线性顺序依次执⾏的⼀种运⾏⽅式。
分⽀结构是程序根据条件判断结果⽽选择不同向前执⾏路径的⼀种运⾏⽅式。
循环结构是程序根据条件判断结果向后执⾏的⼀种运⾏⽅式。
"""程序的分⽀结构单分⽀结构:if"""python中分⽀结构使⽤if保留字对条件进⾏判断,使⽤⽅法:if <条件>:<语句块>其中,if、:、<语句块>、前的缩进都是语法的⼀部分例如:判断⼀个数字的⼤⼩a = 1b = 2if a < b:print("True")<条件>可以是⼀个或者多个条件,多个条件间采⽤and或or进⾏逻辑组合。
and表⽰多个条件“与”的关系,or表⽰多个条件“或”的关系。
例如:判断⽤户输⼊数字的特性a = eval(input("请输⼊⼀个数字:"))if a % 3 == 0 and a% 5 == 0:print("这个数字既能被3整除,也可以被5整除")print("输⼊的数字是:",s)请输⼊⼀个数字: 10输⼊的数字是: 10请输⼊⼀个数字:15这个数字既能被3整除,也可以被5整除输⼊的数字是: 15"""⼆分⽀结构:if-else"""python的⼆分⽀结构使⽤if-else保留字对条件进⾏判断,语法格式如下:if <条件>:<语句块1>else:<语句块2><语句块1>在if<条件>中满⾜即为True时执⾏,<语句块2>在if<条件>中不满⾜即为False时执⾏,简单来说,⼆分⽀结构根据条件True或False结果产⽣两条路径。
第4章 C语言程序的基本控制结构
#include<stdio.h> main() { int c1,c2; scanf("%c",&c); c1=c-1;c2=c+1; printf("%c%4c%4c\n",c1,c,c2); printf("%d%4d%4d\n",c1,c,c2); }
4.2 顺序结构
运行结果:
4.3选择结构
入口
入口
A 语句1 B
真
表达 式
假
条件 语句2 循环体
出口
图4.1 顺序结构
出口 出口
图4.2 选择(分支)结构 图4.3 循环结构
上述三种基本控制结构的共同特定是具有单入口和单出口。 还有一种goto语句,又叫转向语句,在本章的4.4.5小节中将会讲解到。 我们在编写程序时,力求使用前三种基本结构语句。
4.3选择结构
例4.3 幼儿园里三个小朋友站队要求小个站在前面,高个站在后面。 分析:我们可以把个子最小的小朋友放在a位置上,较高的小朋友放在b位 置上,个子最高的小朋友放在c位置上。输入三个数,a,b,c,要求按由小到 大的顺序输出。先比较a和b,若a大于b,则a与b对换,再比较a和c,若a 大于c,则a与c对换,这时a的值是最小的,最后比较b和c,若b大于c,则b 与c对换。这样操作之后就使a<b<c的关系成立。然后顺序输出a,b,c既可。
! 逻辑非,单目运算符,自右至左结合。其运算规则是:当 运算量为0,运算结果为1;反之,当运算量为1,运算结果为0。 && 逻辑与,双目运算符,自左至右结合。其运算规则是: 只有当运算符两边的运算量都是非0时,运算结果才为1,否则为0。 || 逻辑或,双目运算符,自左至右结合。其运算规则是:只 要运算符两边的运算量有一个为为非0,运算结果就为1。只有两 个运算量都为0,结果才是0。 这三个运算符的优先级,逻辑非!最高,逻辑与&&次之,逻 辑或||最低。!(逻辑非)的优先级高于算术运算符和关系运算符, 而&&(逻辑与)和||(逻辑或)的优先级低于算术运算符和关系运算符。 由 此可见: a>b&&c>d 相当于 (a>b)&&(c>d) a= =0||b= =0 相当于 (a= =0)||(b= =0) !a&&b= =c 相当于 (!a)&&(b= =c)
程序流程有三种最基本的控制结构,即顺序结构、选择结构和.ppt
If a * 4 - 1 >= b Then
If b > 5 Then b = b + 1
ElseIf b > 2 Then
b=b-1
Else
b=b+2
End If
b = IIf(a = b, b + 1, b - 1)
Print b End Sub
2 精精 选文选档
想一想
14
主页
4.3 多分支语句
复选按钮组
Caption Value属性:表示复选框的状态 有三种取值:0——未选中(缺省值)
Value属性为2
1——选中 2——不可用(灰色显示) Alignment属性;Sty精l精 选e文选档
21
主页
例4.6 用复选框来控制文字的字体、字型、字号及颜色
(1)创立应用程序的用户界面和设置对象属性 多行文本框(带垂直滚动条)和四个复选框
挨它的文字组成,能提供“选中〞和“未选中〞两种可选项 成组形式出现
Caption属性
2. 常用属性
单选按钮组
Caption属性
Value属性:表示单项选择按钮是否被选中,选中时 Value值为True,否那么为False
使用单项选择按钮组时,选中其中一个,其余就会自动关 闭
Alignment属性:设置单项选择按钮标题的对齐方式
一旦找到一个为真的条件时,VB会执行相应的语句组, 然后执行End If语句后面的代码。
如果所有条件都是假,那么执行Else后面的语句组n,然
后执行End If
精精 选文选档
13
主页
思考题 以下程序的运行结果是?
Private Sub Form_Load() Show
第4章结构化程序设计
第 4章
结构化程序设计
重点:控制结构 、程序实例
东方学院 信息分学院 陈国顺
内 容 பைடு நூலகம் 航
学习提要 教学内容
要点回顾
习题/实验
2
学习提要与目标
理解结构化程序设计的概念 熟练掌握程序控制的基本结构 掌握控制结构嵌套
掌握过程与自定义函数
3
目 录
4.1 程序文件设计 4.2 程序控制的基本结构 4.3 子程序和用户自定义函数 4.4 本章小结
19
4.2.2
选择结构
1.二路分支选择结构
格式:IF <条件表达式> [THEN]
<语句序列1>
[ELSE <语句序列2>] ENDIF
20
4.2.2
选择结构
【例4.4】如果在例题4.2中,根据行李重量的不同,采用不同的收费标准。即当 重量不超过50kg时,按每千克0.60元收费;当重量超过50kg,超出50kg的 部分按每千克0.90元收费,而其中的50kg仍按每千克0.60元收费。试编写 程序计算托运费。 程序代码如下: *****CH4-4.PRG ***** SET TALK OFF CLEAR INPUT "请输入货物的重量(Kg):" TO W IF W<=50 F=W*0.60 ELSE F=50*0.6+(W-50)*0.9 ENDIF ?"货物重量"+ALLTRIM(STR(W,19,2))+" 千克需要的托运费为:"+ALLTRIM(S TR(F,19,2))+"元" 21 SET TALK ON
31
第04章三种基本控制结构(上)--2012年12月
二、算法的表示方法
自然语言
(通俗易懂, 文字冗长, 容易有“歧义性”)
流程图
(灵活, 自由, 形象, 直观, 易理解, 占篇幅大)
N-S图
(新型流程图, 简洁)
伪代码
(介于自然语言和计算机语言之间, 中英文皆可,格式 自由, 易修改, 不直观, 不容易发现逻辑错误)
计算机语言
(用计算机实现算法, 可以执行出结果, 比如 C 语言)
1. d ( i ) 格式符:输出十进制有符号整数。
格式
功能
%d
按十进制整型数据格式和数据的实际长度输出
%ld
按长整型数据格式和数据的实际长度输出
%hd
按短整型数据格式和数据的实际长度输出
%(-)md m指定输出字段的宽度。如果十进制数据的位数 %(-)mld 小于m,则左端补空格(若m前面有负号,则右端 %(-)mhd 补空格);否则按实际长度输出
%(-)mu m指定输出字段的宽度。如果无符号数据的位数小 %(-)mlu 于m,则左端补空格(若m前面有负号,则右端补空 %(-)mhu 格);否则按实际长度输出
【例3.8】将整型变量按照指定无符号格式输出。
#include <stdio.h> int main( ) {
int a = -1; printf("<按无符号格式输出:%u>\n",a); printf("<按无符号格式输出:%-8lu>\n",a); printf("<按无符号格式输出:%8hu>\n",a);
程序=算法+数据结构+程序设计方法+语言
环境
灵 加工 结构化程序设计
第04章 程序的控制结构
第 4 章
程序的控制结构
计算机中的问题求解过程
Example :银行定期存款 已知年利率rate,存款期为n年,本金为capital,n年后得 到的本利之和是多少?
Input
• 存款年数 • 本金 •利率
Process
deposit = capital* (1+rate)n
Output
deposit
Page 3
C语言程序设计
第 4 章
程序的控制结构
算法的概念及其描述方法
一个程序应包括两个方面的内容:
对数据的描述:数据结构(data structure) 对操作的描述:算法(algorithm)
著名计算机科学家沃思提出一个公式:
数据结构 + 算法 = 程序
计算机中的算法( Algorithm )
}
_ 15 Input a,b: 20
没有输入或有多个输入 有一个或多个输出
计算机与信息工程学院
Page 5
C语言程序设计
第 4 章
程序的控制结构
算法的描述方法
自然语言描述
传统流程图(Flowchart)
在1966年,Bohra 与 Jacopini 提出
N-S结构化流程图
1973年,美国学者I.Nassi 和 B.Shneiderman 提 出
为解决一个具体问题而采取的确定的有限的操作
步骤,仅指计算机能执行的算法。
计算机与信息工程学院
Page 4
C语言程序设计
第 4 章
程序的控制结构
算法的特性
有穷性 在合理的时间内完成 确定性,无歧义
Python基础知识之4——三大控制结构
Python基础知识之4——三⼤控制结构 控制结构就是控制程序执⾏顺序的结构。
Python 有三⼤控制结构,分别是顺序结构、分⽀结构(选择结构)以及循环结构。
任何⼀个项⽬或者算法都可以使⽤这三种结构来设计完成。
这三种控制结构也是结构化程序设计的核⼼,与之相对的是⾯向对象程序设计。
有名的 c 语⾔就是结构化语⾔,⽽ c++、 Java 或者 python 等都是⾯向对象的语⾔。
顺序结构 顺序结构就是按照你写的代码顺序执⾏,也就是⼀条⼀条语句顺序执⾏。
这种结构的逻辑最简单,就是按顺序执⾏就⾏了。
分⽀结构(选择结构) 分⽀结构⼜称为选择结构,意思是程序代码根据判断条件,选择执⾏特定的代码。
如果条件为真,程序执⾏⼀部分代码;否则执⾏另⼀部分代码。
在 Python 语⾔中,选择结构的语法使⽤关键字 if、 elif、 else 来表⽰,具体语法如下: 基本语法有⼀下⼏种: 1、if 2、if...else 3、if...elif...else 4、if...elif...elif......else 5、if 嵌套# 分⽀结构# ifa = 1if a == 1:print('此时a等于1')# if...elsea = 2if a == 1:print('此时a等于1')else:print('此时a不等于1')# if...elif...elsea = 2if a == 1:print('此时a等于1')elif a == 3:print('此时a等于3')else:print('此时a等于2')# if...elif...elif...elsea = 2if a == 1:print('此时a等于1')elif a == 3:print('此时a等于3')elif a == 4:print('此时a等于4')else:print('此时a等于2')# if嵌套a = 2b = 5if a == 2:if b == 3:print('此时a等于2,b等于3')else:print('此时a等于2,b不等于3')else:print('此时a不等于2') 循环结构环和while循环。
程序设计的三种控制结构
程序设计的三种控制结构1、顺序结构A=5A=a+2“=”是一个赋值,先执行右边的2、选择结构从键盘上输入一个数字判断是偶数还是奇数分析:如果一个数能被2整除,它就是偶数Input “qingshuruyigeshu” to aIf a mod 2=0 关系运算?? “偶数”End if“=”在判断结构中,不再是赋值,而是关系运算一个条件两种结果的If a mod 2=0 a=7??”oushu”Else??”jishu”EndifA=”abcdefgHHHH”判断一下,字符串a的第五个字符是不是数字。
分析,如何把字符串a的第五个字符取出来Right(Left(a,5),1)B=Substr(a,5,1)判断这个字符是不是数字怎么判断是数字还是其他字符,如果b的ascii的码属于数字范围就是数字,不属于就不是数字0-9 48- 57If asc(b)>=48 and asc(b)<=57??”shuzi”Else??”feishuzi”End if字符串函数?Len(a) 字符串的长度函数结果7,一个汉字两个字符11?lower(a)结果为:“abcdefghhhh”?upper(a)结果为:“ABCDEDGHHHH”SPACEB=A&SPACE(5)LEN(B)A=”abcdefgHHHH”LEFT(A,3)结果为”abc”RIGHT(a,3)结果为”hhh”Substr(a,3)SUBSTRInput “请输入所用的电量” to A判断a的范围,如果超过50度是一种计算方式,50度以内是另外一种计算方式,一个条件两个结果CLEARSET TALK OFFInput “请输入所用的电量” to AIf a>50B=50*0.52+(A-50)*075ElseB=A*0.52End ifSET TALK ON??”YINGJIAODE DIANFEI”,B,”YUAN”判断某一年是否为闰年什么是闰年,闰年的年份是4的倍数,但是不是100的倍数Input “请输入年份” to a如果年份能被4整除,并且不能被100整除,就是闰年,否则就是非闰年ClearSet talk offInput “请输入年份” to aIf a mod 4=0 and a mod 100<>0??”runnian”Else??”bushirunnianendifset talk on判断一个三位数是否为水仙花数分析:什么是水仙花如果一个三位数的个位数的三次方+十位数的三次方+百位数的三次方=它本身,她就是水仙花,这个是从键盘上输入Input “请输入一个三维数” to aB=a mod 10个位数C=int((a mod 100)/10 ) 十位数D=int( a/100 ) 百位数x=str(a) “153”b=substr(x,3,1)c=substr(x,2,1)d=substr(x,1,1)b c d “1”“5”“3”If val(b)^3+val(c)^3+val(d)^3=a??“shuxianhuashu”Else??“bushishuxianhuashu”endif1532、循环结构从键盘上属于一串二进制代码,编写程序,转换为十进制代码11011必须把每个1 1 0 1 1 取出来,字符串函数分析:x是大于200 还是小于等于200If x<=200X=x+500ElseIf x<=300X=x+300ElseX=x+100End ifendif分支结构的嵌套多分支选择结构期末90 80 70 60 小于60现在国家个人所得税的上缴3500 免证税3500-5100 3% 超出部分5100-8000 10% 超出部分8000-15000 20% 超出部分。
第四章 VB控制结构(第三版)
过程形式:MsgBox 提示[,按钮][,标题] 按钮项是一整型表达式,决定信息框按钮的数目
和类型及出现在信息框上的图标形式。
按钮设置值及意义
函数返回所选按钮整 数值的意义
MsgBox函数示例:
例4.2 要求:
编一帐号和密码检验程序。
帐号不超过6位数字,有错,清除原内容再输 入;密码输入时在屏幕上以 “*”代替;若密码错, 显示有关信息,选择“重试”按钮,清除原内容再 输入,选择“取消”按钮,停止运行。
第四章
VB控制结构
目录
4.1 顺序结构
4.2 选择结构
4.3 循环结构 4.4 其它辅助控制语句 4.5 综合应用 4.6 程序调试
4.1 顺序结构
VB具有结构化程序设计的三种结构, 即顺序结构、选择结构、循环结构,是程序 设计的基础。 顺序结构就是各语句按出现的先后次序 执行。
本章目录
一般的程序设计语言中,顺序结构的语 句主要是赋值语句、输入/输出语句等。 在VB中也有赋值语句;而输入/输出可 以通过文本框控件、标签控件、InputBox函 数、MsgBox函数和过程等来实现。
InputBox()函数、MsgBox()函数和MsgBox过程 1. InputBox函数 打开一个对话框,等待用户输入,返回字符串类 型的输入值。 形式: InputBox(提示[,标题][,默认][,x坐标位置]
[,y坐标位置])
InputBox(提示[,标题][,默认][,x坐标位置][,y坐标位置])
常用数值格式符
说明:
对于符号“0”或“#”,相似之处是,若要显示 数值表达式的整数部分位数多于格式字符串的位 数,按其实际数值显示;若小数部分的位数多于 格式字符串的位数,按四舍五入显示。
第四章结构化程序设计控制结构
•
PRINT*,‘X1=’,X1,’,X2=’,X2
•
40 RETURN
• END SUBROUTINE
3. IF 块
IF 块的构造形式为:
•
IF condition THEN
•
block1
•
[ELSE
•
blockE]
•
END IF
其中,condition是一个逻辑表达式,其结果不外乎真或假。 block1 和 blockE是语句块,当条件为真,block1 被执行; 否则,blockE 被执行。ELSE 块是可选的。
•
[CASE DEFAULT
•
blockD]
•
END SELECT
其中expr 必须是整型、字符型或者逻辑型变量。Selector 可以是同一类型, 非交叉的值或值范围(:用来规定值的范围)的列表。用CASE块统计 学生得分如下:
SELECT CASE ( INT(Final))
•
CASE (90:)
•
case default
•
PRINT*,‘Consonant’
•
END SELECT
•
ELSE
•
PRINT*,‘Something else’
CASE块的构造形式为:
•
SELECT CASE (expr)
•
CASE (selector1)
•
block1
•
CASE (selector2)
•
block2
•
D=D+1
•
ELSE
•
F=F+1
•
END IF
程序执行一旦发现某个逻辑条件为真,就不会再去判断其他
第4章程序的控制结构PPT课件
{
语句;
表达式3;
}
22
注意
在for和while语句之后一般没有分号 有分号表示循环体就是分号之前的内容(空循
环体)
while (i < 100); i++;
for (i = 0; i < 100; i++); printf("%d", i);
for通常ቤተ መጻሕፍቲ ባይዱ一个循环变量控制循环的次数,不 要在循环体内改变这个变量
else部分可以没有。 if (表达式) 语句1; 语句3
当表达式值为0时,直接执行语句3
if-else嵌套使用时,注意else和谁配对的问 15
else-if
if的一种扩展形式
if (表达式) 语句1;
else if (表达式) 语句2;
else if (表达式) 语句3;
…………
else
}
20
while
while (表达式) { 语句; }
只要表达式的值为非0,就重复执行语句, 直到表达式值为0时止
21
fforor(表达式1; 表达式2; 表达式3)
{ 语句;
} 首先执行表达式1。如果表达式2的值为非0,
就重复执行语句和表达式3,直到表达式2的值 为0时止
相当于: 表达式1; while (表达式2)
用3种方法编程:
算法1:用不带else子句的if语句编程
17
switch
多路选择 switch (表达式)
{ case 常数1: 语句序列1; case 常数2: 语句序列2; ………… default: 语句序列3;
}
default可以没有,但最好不省略
第4章c语言的三种基本结构
程序1: /*exp51.c*/ #include <stdio.h> main ( ) { int x, y;
scanf(“%d", &x); if (x<0)
y= -1; else if (x==0)
y=0; else
y=1; printf ("x=%d, y=%d\n", x, y); }
程序2:将程序1的if语句改为: /*exp52.c*/ #include <stdio.h> main ( ) { int x, y; scanf(“%d", &x); if (x>=0)
1. 顺序结构 先执行A, 再执行B.
A 表示 A B
B
2. 选择结构 存在某条件P, 若P为真,则执行A, 否则执行B。
TP F
A
B
表示为
TP F AB
另一种选择结构––多分支结构.
K
K=K1 K=K2
K=Kn
A1 A2 … Ai … An
3. 循环结构
有两种结构:当型和直到型 (1) 当型结构
例:计算10!并输出结果。
main()
main()
{
{
int i=1, sum=1;
int i=1; long sum=1;
loop: if (i<=10)
loop: if (i<=10)
{
{
sum=sum*i;
sum=sum*i;
i++;
i++;
goto loop;
goto loop;
}
}
printf(“10!=%d\n”,sum); printf(“10!=%ld\n”,sum
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4.1 算法及算法的表示
例如:例4.1可用如下的伪代码表示 Begin(算法开始)
输入 A,B,C IF A>B 则
A→Max 否则 B→Max IF C>Max 则 C→Max Print Max End (算法结束)
目录 4.1浙江4.2科技4.学3 院4教.4信系4计.5算机4基.6础作教业学网站:
4.1 算法及算法的表示
例4.1 输入三个数,然后输出其中最大的数。 将三个数依次输入到变量A、B、C中,设变量MAX存放
最大数。其算法如下: 1) 输入A、B、C。 2) A与B中大的一个放入MAX中。 3) 把C与MAX中大的一个放入MAX中。 4) 输出MAX,MAX即为最大数。
目录 4.1浙江4.2科技4.学3 院4教.4信系4计.5算机4基.6础作教业学网站:
第4章--三种控制结构程序设计
4.1 算法及算法的表示
4.1.1 算法概述
什么是算法: 广义地讲:算法是为完成一项任务所应当遵循的一步一
步的规则的、精确的、无歧义的描述,它的总步数是有限的。 狭义地讲:算法是解决一个问题采取的方法和步Байду номын сангаас的描述。
下面通过两个简单的例子加以说明:
目录 4.1浙江4.2科技4.学3 院4教.4信系4计.5算机4基.6础作教业学网站:
4.1 算法及算法的表示
例4.2 输入10个数,打印输出其中最大的数。 算法设计如下:
(1)输入1个数,存入变量A中,将记录数据个数的变量N赋 值为1,即N=1
(2)将A存入表示最大值的变量Max中,即Max=A (3)再输入一个值给A,如果A>Max 则 Max=A, 否则 Max不变 (4)让记录数据个数的变量增加1,即N=N+1 (5)判断N是否小于10,若成立则转到第(3)步执行,否 则转到第(6)步 (6)打印输出max
N<10 N
Y
再输入给A
N A>Max Y
Max =A
N=N+1
打印Max 结束
输入A Max=A, N=1 当N<10
输入A
N A>Max Y
Max =A N=N+1
打印Max
N—S流程图
传统流程图
4.1浙江4.2科技4.学3 院4教.4信系4计.5算机4基.6础作教业学网站:
4.1 算法及算法的表示
二 用传统流程图表示算法
1、传统流程图中的基本符号
起止框
I/O框
判断框
处理框
流程线
连接点
目录 4.1浙江4.2科技4.学3 院4教.4信系4计.5算机4基.6础作教业学网站:
4.1 算法及算法的表示
2、三种基本结构的表示
(1)顺序结构
(2)选择结构
a) 当型循环
b) 直到循环
当条件成立 语句组 (a)
语句组 直到当条件成立
(b)
例: 画出从10个数中选出最大的数的N—S 流程图
目录 4.1浙江4.2科技4.学3 院4教.4信系4计.5算机4基.6础作教业学网站:
目录
4.1 算法及算法的表示
开始
输入A Max =A
N=1
4.1 算法及算法的表示
三种基本结构的特点:
(1)只有一个入口 (2)只有一个出口 (3)不存在死语句 (4)不存在死循环
例: 例4.2输入10个数,打印输出其中的最大的数的流程图
目录 4.1浙江4.2科技4.学3 院4教.4信系4计.5算机4基.6础作教业学网站:
4.1 算法及算法的表示
目录 4.1浙江4.2科技4.学3 院4教.4信系4计.5算机4基.6础作教业学网站:
4.1 算法及算法的表示 4.1.2 算法的特性
1 有穷性 2 确定性 3 有0个或多个输入 4 有一个或多个输出 5 有效性
目录 4.1浙江4.2科技4.学3 院4教.4信系4计.5算机4基.6础作教业学网站:
将全部算法写在一个矩形框内,在矩形内还可包含其 它从属于它的框
三种基本结构的N—S图表示:
1、顺序结构 语句A 语句B
2、选择结构
Y
条件 N
语句A 语句B
目录 4.1浙江4.2科技4.学3 院4教.4信系4计.5算机4基.6础作教业学网站:
4.1 算法及算法的表示
(3)循环结构
从10个数中选出最大的数 的算法流程图
开始 输入A
Max =A N=1
N<10 N
Y
再输入给A
目录
N A>Max Y
Max =A
N=N+1
打印Max 结束
4.1浙江4.2科技4.学3 院4教.4信系4计.5算机4基.6础作教业学网站:
4.1 算法及算法的表示
4.1.4 用N—S流程图表示算法
语句1 语句2
Y
条件
语句1
N 语句2
目录 4.1浙江4.2科技4.学3 院4教.4信系4计.5算机4基.6础作教业学网站:
4.1 算法及算法的表示
(3)循环结构
a) 当型循环
b) 直到循环
条件 N
Y 语句组
语句组
Y 条件 N
(a)
(b)
目录 4.1浙江4.2科技4.学3 院4教.4信系4计.5算机4基.6础作教业学网站:
目录 4.1浙江4.2科技4.学3 院4教.4信系4计.5算机4基.6础作教业学网站:
4.1 算法及算法的表示 4.1.6 结构化程序设计方法(补充)
4.1 算法及算法的表示
下面是例4.2的计算机 程序,即为用计算机语言表示算法: Private Sub Form_Click() Dim a%, max%, i% a = Val(InputBox("A=?")) max = a For i = 1 To 10 a = Val(InputBox("A=?")) If a > max Then max = a Next i Print "Max="; max End Sub
4.1 算法及算法的表示
4.1.3 算法的表示
一、自然语言与伪代码表示算法 自然语言:就是指人们日常使用的语言,可以是汉语、英 语或其它语言。 伪代码:是用介于自然语言和计算机语言之间的文字和符 号(包括数学符号)来描述算法。
目录 4.1浙江4.2科技4.学3 院4教.4信系4计.5算机4基.6础作教业学网站: