- 1、本文档共36页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 C 程序的流程设计 电子课件制作: 李秀梅 §3.1 算法 算法的性质与组成要素 算法的性质:就是进行操作的方法和步骤。 算法的组成要素: 操作:包括算术运算、逻辑运算、关系运算、函数运算、位运算等; 控制结构:三种基本控制结构;顺序结构、选择结构、循环结构; 算法的描述 流程图 伪代码与逐步细化的程序设计方法 C程序的三种基本结构 顺序结构; 例1:三个数中取最大数;example1.c §3.2 用C语句描述算法 C语言的语句用来向计算机系统发出指令。一个语句编译后产生若干条机器指令。 语句按功能分为两类:即操作运算语句和流程控制语句; C语言只有可执行语句,无非执行语句; 一个源文件由若干函数和预编译命令组成,一个函数由数据定义部分和执行语句组成。 C语句的分类 表达式语句; 赋值语句; 如:i=1; y=sin(x); 函数调用语句; printf(“ hello,c\n”); 空语句; 只有一个分号 ; 逗号表达式语句; 如: i=2, j=3; a=(a=6, a*3, a+3); 控制语句,共9种: ① if()~else ~ (条件语句); ② for( ); ③ while()~; ④ do ~ while()(循环语句) ⑤ continue(结束本次循环); ⑥ break(中止执行 switch 或循环语句); ⑦ switch (多分支选择); ⑧ goto(无条件转向) ⑨ return (函数返回); 复合语句。 §3.3 选择型程序设计 if…else 结构的应用 先对表达式进行判断,若为真(非0),就执行分结构S1;否则执行分结构S2; 可退化为简单的 if 条件语句; else 子句不能单独使用,只能作为if 语句的一部分,与if 配对使用; 如果if 和else 后面有多个操作语句,此时要用花括号“{ }”将几个语句括起来成为一个复合语句。 if…else 结构可以嵌套; 一般形式: if (表达式1) if ( 表达式2) 语句1 else 语句2 else if (表达式3) 语句3 else 语句4; 不平衡的if…else 结构会增加阅读和理解程序的困难; 正确的缩进格式有助于理解,但程序的语法关系与书写格式无关; 从最内层开始,else 总是与它上面最近的(未曾匹配的)if 配对。 if…else 不匹配时,适当增加花括号可保证逻辑关系的正确性; 如 x=0,y=1,z= 2;判断1)和2)的 z的结果;example5.c 1) if (x ) if ( y) z=y; else z= -y; 2) if (x ) { if ( y) z=y; } else z= -y; else if 结构的应用 该结构执行时,依次对各个条件进行判断测试,符合某一条件就转去执行该条件后面的操作,其它部分将被跳过;如无一条件为真,就执行else 后面的操作;如最后else 不存在,该结构就不执行任何操作。 作业题:设计一个计算5次样条函数的程序 §3.4 循环型程序设计 循环结构 循环结构的组成: 进入循环条件; 循环体; 退出循环条件; 循环结构的形式: while 结构: do…while 结构; for 结构; 循环结构的两种算法: 穷举 对问题的所有可能状态一一测试,直到找到解或将全部可能状态都测试过为止; 两种控制方法: 计数法:先确定循环次数,完成测试次数后,循环结束。 标志法:达到某一目标后,使循环结束。 如录取新生;白钱买百鸡问题;搬砖问题; 迭代 迭代是不断由旧值推出变量的新值的过程。 如人口增长问题; 兔子繁殖问题;方程求解等问题; While 结构的应用 While的一般形式: While(表达式) 循环体语句 While 语句的执行步骤: (1)求表达式的值,若非零,执行(2),若值为零,执行(4); (2)执行循环体内语句; (3)转向执行(1); (4)结束While循环,执行循环体后的语句; 当循环体包含一个以上语句时,应用花括号括起来,成为一复合语句; 注意循环的边界值; 例2:百钱买百鸡问题。 鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、母、雏各几何? for 结构的应用 一般形式: for(表达式1; 表达式2; 表达式3) 循环体语句 执行步骤如下: (1)计算表达式1; (2)计算表达式2,若值非0,执行(3);
文档评论(0)