资源描述:
《ch4控制结构程序设计 C语言 《解析C程序设计》ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第4章控制结构程序设计本章要点算法的表示条件(if):用求根公式求方程的解自学p93--95多分枝switch判断某一天是这一年的第几天循环统计平均成绩(while,dowhile)求n!(for)猴子吃桃,牛顿法迭代求根(递推与迭代)判断一个正整数是否是素数猜数游戏(随机数)百钱百鸡,选人方案(穷举,逻辑问题求解)程序设计=算法+数据结构+方法+工具(语言)算法:对特定问题求解步骤的一种描述:伪代码、流程图、NS图、PAD图程序:用具体的计算机语言来描述算法。可以输入计算机并产生结果数据结构:是对加
2、工对象的组织语言=数据类型+数据操作+语句数据类型=简单类型+指针类型+构造类型语句=赋值语句+I/O语句+分支控制语句+循环语句+函数(过程)方法=结构化程序设计方法+面向对象程序设计方法+面向方面的程序设计方法+良好的设计风格流程图1966年,Bohm和Jacopini证明了任何复杂的程序都可以用顺序、选择和循环3种基本结构组合而成多分支选择结构NS图顺序结构选择结构多路分支结构当型循环结构直到型循环结构条件满足不满足S1S2WHILE条件SUNTIL条件SPAD图while循环继续条件语句块语句
3、块1条件语句块2选择循环多分支选择表达式常量表达式1常量表达式2常量表达式n语句块1语句块2语句块n语句块n+1……循环变量初值循环继续条件循环变量增量语句块顺序语句1语句2语句3程序设计的基本方法自顶向下:将一个复杂问题的解法分解和细化成由若干模块组成的层次结构逐步细化:将一个模块的功能逐步分解细化为一系列的处理步骤,直到某种程序设计语言的语句或某种机器指令模块化设计:把大程序按人们能理解的大小规模进行分解模块间的接口关系比较简单需要修改某一功能时,一般只涉及一个模块可以脱离程序的上、下文单独验证一
4、个模块的正确性扩充系统或建立新系统时,可以利用已有的一些模块结构化编码:把程序的结构限制为顺序、选择和循环3种基本结构可以把整个结构抽象成一个操作(语句),把它嵌入到不同的结构中,构成更复杂的计算流程养成编程的良好习惯判断两个数是否相等时,将常量或表达式写在==的左边书写if,while,dowhile,for的程序段时,即使只有一条语句也加上{}先输入符号对(),{},[],'',"",再插入内容程序书写为锯齿形输入switch语句时,先输入case和break,再输入程序段在每个嵌套的控制结构的}
5、后加注释语句重要变量要有用途说明判断:某一天是这一年的第几天程序实现思路:累加过足的月份各月天数和未过足月份的天数1.过足的月份有固定的天数:(1)每月30或31天(2)润年2月份有29天;平年有282.没过足的月份单独计:最后一个月,也就是输入的天数处理/计算yearmonthday函数Days()总计天数switch语句逻辑运算符练习多分枝switch语句switch(表达式){case常量表达式1:语句序列1;break;……case常量表达式n:语句n;break;default:语句n+1;
6、}表达式常量表达式1常量表达式2常量表达式n语句块1语句块2语句块n语句块n+1……switch语句说明switch结构中,常量表达式必须互不相同、离散的,因为在switch结构中分支数是有限的case与default的顺序可以任意,各case的顺序也可以任意多个case可以共用一组执行语句当执行完某case后的语句后,将顺序执行后面case后的语句,直到遇break语句才退出整个switch结构的执行1.逻辑与,运算符为&&逻辑运算符与逻辑表达式A——表示开关A合上;B——表示开关B合上;A&&B—
7、—表示灯亮;见0为0,全1为1BAA&&BABA&&B111100010000逻辑变量的取值,非真即假1表示真,0表示假2.逻辑或,运算符为
8、
9、A——表示开关A合上;B——表示开关B合上;A
10、
11、B——表示灯亮;BAA
12、
13、BABA
14、
15、B1111010110001表示真,0表示假见1为1,全0为03.逻辑非,运算符为!两队比赛篮球,变量A表示A队到场,!A表示A队不到场,变量B表示B队到场,!B表示B队不到场。这场球赛能够赛成,得两队都到场。假定“能赛成”用逻辑变量C表示C=A&&B赛不成!C表示,D=!
16、C,D表示赛不成D=!A
17、
18、!B理解为A不到场或B不到场,球赛无法进行!C判断闰年的逻辑表达year%4==0year%100!=0year%400==0&&
19、
20、()练习:设三角形三边为a,b,c,请写出以下逻辑表达三角形的条件:任意两边之和大于第三边等腰三角形的条件:有两边相等等边三角形的条件:三边相等逻辑运算用于描述复杂的逻辑关系在C语言中,允许把任何基本类型当作逻辑值用。值为非0表示“真”,值为0表示“假”!&&、
21、
22、为短路求值:只要可求出结果就不