第4章算法与控制结构 本章要求: 令掌握C语句、C语言程序的结构关系; ◇理解算法及算法的表示; ◇掌握顺序结构程序设计 令掌握选择控制语句——if语句、 switch语句以 及他们的嵌套应用,漫光r语句、 while语句 ☆掌握循环控制语句~fc do… while语句以及他们的嵌套应用;x 令掌握 break语句、 continue语句的应用; 令能够运用3种结构进行综合程序设计
本章要求: ❖ 掌握C语句、C语言程序的结构关系; ❖ 理解算法及算法的表示; ❖ 掌握顺序结构程序设计 ❖ 掌握选择控制语句——if语句、switch语句以 及他们的嵌套应用; ❖ 掌握循环控制语句——for语句、while语句、 do…while语句以及他们的嵌套应用; ❖ 掌握break语句、continue语句的应用; ❖ 能够运用3种结构进行综合程序设计。 第4章 算法与控制结构
第4章算法控制结构 41c语句结构 4.2算法及算法的表示 4.3顺序结构 44选择结构 4.5循环结构 4.6其它控制语句 4.7应用程序举例
4.1 C语句结构 4.2 算法及算法的表示 4.3 顺序结构 4.4 选择结构 4.5 循环结构 4.6 其它控制语句 4.7 应用程序举例 第4章 算法控制结构
41C语句结构 C语句是C程序的最基本成分。C语句必须由分号 结尾,哪怕只有一个分号也能构成一个空语句。在C语言 中只有“可执行语句”,没有“非执行语句” 个大型C程序 预处理命令 的结构如图4-所示, 源程序文件1 即一个C程序可以 全局变量定义 函数头 由若干个源程序文 函数1 件组成,一个源文 源程序文件2 说明部分 件可以由若干个函 程序 函数2 数和预编译命令组 函数体 成,一个函数又由 函数n 数据定义部分和执 源程序文件n 执行语句 行部分组成
4.1 C语句结构 C语句是C程序的最基本成分。C语句必须由分号“ ; ” 结尾,哪怕只有一个分号也能构成一个空语句。在C语言 中只有“可执行语句”,没有“非执行语句” 。 一个大型 C程序 的结构如图4-1所示, 即一个C程序可以 由若干个源程序文 件组成,一个源文 件可以由若干个函 数和预编译命令组 成,一个函数又由 数据定义部分和执 行部分组成
41C语句结构 C语句分为以下五类: 1.控制语句 控制语句用于控制程序的流程,以实现程序的各种结 构方式。它们由特定的语句定义符组成。C语言有9种控 制语句,分为以下三类 1)条件判断语句:i语句、 switch语句 2)循环执行语句:for语句、 do while语句、 while语句 3)转向语句: break语句、goto语句、 continue语句、 return语句
4.1 C语句结构 C语句分为以下五类: 1.控制语句 控制语句用于控制程序的流程,以实现程序的各种结 构方式。它们由特定的语句定义符组成。C语言有9种控 制语句,分为以下三类: 1)条件判断语句:if语句、switch语句。 2)循环执行语句:for语句、do while语句、while语句。 3)转向语句:break语句、goto语句、continue语句、 return语句
41C语句结构 2.函数调用语句 函数调用语句由函数名和实际参数加上分号 组 成。其一般形式为: 函数名(实际参数表); 执行函数调用语句就是调用函数体并把实际参数赋予 函数定义中的形式参数,然后执行被调函数体中的语句。 例如: printf('C Program) /调用库函数,输出字符串
4.1 C语句结构 2.函数调用语句 函数调用语句由函数名和实际参数加上分号“ ; ”组 成。其一般形式为: 函数名(实际参数表); 执行函数调用语句就是调用函数体并把实际参数赋予 函数定义中的形式参数,然后执行被调函数体中的语句。 例如: printf("C Program"); /* 调用库函数,输出字符串 */
41C语句结构 3.表达式语句 由表达式加上分号“;”组成。其一般形式为: 表达式; 执行表达式语句就是计算表达式的值。 例如: X=y+z;/赋值语句; y+z;加法运算(表达式)语句,但计算结果没有保留,无意义 计+;∥/自增1语句,道值增1,等价于i=i+1;
4.1 C语句结构 3.表达式语句 由表达式加上分号“ ; ”组成。其一般形式为: 表达式; 执行表达式语句就是计算表达式的值。 例如: x=y+z; //赋值语句; y+z;//加法运算(表达式)语句,但计算结果没有保留,无意义 i++; //自增1语句,i值增1,等价于 i=i+1;
关于赋值语句一是表达式语行中使用最多的语句 赋值语句是白赋值表达式再加分号构成的表达式语句。 其一般形式为:变量=表达式; 功能:将赋值运算符右侧“表达式”的值赋给左侧的变量。 例如,以下均为赋值表达式: x=3(x的值为3) Y=z=-1 (等价于y=(z=-1),y和z的值都为-1) a=(b=10)/(a=2)(b的值为10,a的值为5) y=(7+6)85/3 (y的值为1) 若在赋值表达式后面加上“;”,则构成赋值语句 X=5; y=z=-1; a=(b=10)/a=2); y=(7+6)%5/3
关于赋值语句 赋值语句是由赋值表达式再加分号构成的表达式语句。 其一般形式为: 变量=表达式; 功能:将赋值运算符右侧“表达式”的值赋给左侧的变量。 例如,以下均为赋值表达式: x=3 (x的值为3) y=z=-1 (等价于y=(z=-1),y和z的值都为-1) a=(b=10)/(a=2) (b的值为10,a的值为5) y=(7+6)%5/3 (y的值为1) 若在赋值表达式后面加上“;”,则构成赋值语句: x=3; y=z=-1; a=(b=10)/(a=2); y=(7+6)%5/3; 是表达式语句中使用最多的语句
关于赋值语句 说明: 1.赋值符“=〃右边的表达式可以又是一个赋值表达式 因此,下述形式是正确的:变量=(变量表达式) 其展开之后的一般形式为:变量变量=表达式; 例如 a=b=c=d=e=5;按照赋值运算符的右结合性,因此实 际上等效于: e=5: d=e: c=d: b=c: a=b
关于赋值语句 说明: 1.赋值符“=” 右边的表达式可以又是一个赋值表达式 因此,下述形式是正确的:变量=(变量=表达式); 其展开之后的一般形式为:变量=变量=…=表达式; 例如: a=b=c=d=e=5;按照赋值运算符的右结合性,因此实 际上等效于: e=5; d=e; c=d; b=c; a=b;
关于赋值语 2.注意变量说明中给变量赋初值和赋值 语句的区别。 给变量赋初值是变量说明的一部分, 赋初值后的变量与其后的其它同类变 量之间仍必须用逗号间隔,而赋值语 句则必须用分号结尾
2.注意变量说明中给变量赋初值和赋值 语句的区别。 给变量赋初值是变量说明的一部分, 赋初值后的变量与其后的其它同类变 量之间仍必须用逗号间隔,而赋值语 句则必须用分号结尾。 关于赋值语句
关于赋值语 3.在变量说明中,不允许连续给多个变 量赋初值。 如下述说明是错误的 int a=b=c=5 必须写为inta=5,b=5,c=5;而赋值 语句允许连续赋值
3.在变量说明中,不允许连续给多个变 量赋初值。 如下述说明是错误的: int a=b=c=5; 必须写为 int a=5,b=5,c=5; 而赋值 语句允许连续赋值。 关于赋值语句