第二章C程序设计初步 3.1结构化程序设计思想 3.2C语句概述 33赋值语句 34文件包含 35流和文件初步 3.6数据输出 3.7数据输入 3.8程序举例 BACK
第二章 C程序设计初步 3.1 结构化程序设计思想 3.2 C语句概述 3.3 赋值语句 3.4 文件包含 3.5 流和文件初步 3.6 数据输出 3.7 数据输入 3.8 程序举例
31结构化程序设计思想 311程序的质量标准 个好的程序在满足运行结果正确的基本条件之后,首 先要有良好的结构,使程序清晰易懂。在此前提之下,才考 虑使其运行速度尽可能的快,运行时所占内存应尽量压缩至 合理的范围。也就是说,现在的程序质量标准易读性好是第 位的,其次才是效率。因为从根本上说,只有程序具有了 良好的结构,才易于设计和维护,减少软件成本,从整体来 说才是真正提高了效率
3.1 结构化程序设计思想 3.1.1 程序的质量标准 一个好的程序在满足运行结果正确的基本条件之后,首 先要有良好的结构,使程序清晰易懂。在此前提之下,才考 虑使其运行速度尽可能的快, 运行时所占内存应尽量压缩至 合理的范围。也就是说,现在的程序质量标准易读性好是第 一位的,其次才是效率。因为从根本上说,只有程序具有了 良好的结构,才易于设计和维护,减少软件成本,从整体来 说才是真正提高了效率
3,12结构化程序设计方法 (1)一个大的程序开发应当采取“自顶向下,逐步细化, 模块化”的方法。 (2)任何程序均由具有良好特性的三种基本模块(顺序, 分支,循环)堆积”搭成,即由基本小单元顺序组成一个 大结构,从而避免了使用goto语句的缺点
3.1.2 结构化程序设计方法 (1) 一个大的程序开发应当采取“自顶向下, 逐步细化, 模块化”的方法。 (2) 任何程序均由具有良好特性的三种基本模块(顺序, 分支,循环)“堆积”搭成,即由基本小单元顺序组成一个 大结构,从而避免了使用goto语句的缺点
313结构化程序的标准 l)程序符合“清晰第一,效率第二”的质量标准。 (2)具有良好的特性。 ①只有一个入口 ②2只有一个出口(有些分支结构很容易写成多个出口) ③无死语句(永远执行不到的语句) ④没有死循环(永远执行不完的无终止的循环)
3.1.3 结构化程序的标准 (1) 程序符合“清晰第一,效率第二”的质量标准。 (2) 具有良好的特性。 ① 只有一个入口。 ② 只有一个出口(有些分支结构很容易写成多个出口)。 ③ 无死语句(永远执行不到的语句). ④ 没有死循环(永远执行不完的无终止的循环)
314三种基本模块 顺序结构 程序模块A 程序模块A 新程序模块 程序模块B 程序模块B 图31顺序结构
3.1.4 三种基本模块 1. 顺序结构 程序模块B 程序模块A 程序模块A 程序模块B 新程序模块 (a) (b) (c) 图 3.1 顺序结构
2.分支结构 条件不成立 成立 条件 成立 不成立 新程序模块 程序模块A|程序模块B 程序模块A程序模块B 图32分支结构
2. 分支结构 图 3.2 分支结构 条 件 程序模块A 成 立 程序模块B 不成立 程序模块A 程序模块B 成 立 不成立 条 件 新程序模块 (a) (b) (c)
3.循环结构 条件不成遊 成 当条件成立时执行 新程序模块 程序模块 程序模块 图3.3当型循环结构
3. 循环结构 图 3.3 当型循环结构 程序模块 新程序模块 (a) (b) (c) 当条件成立时执行 程序模块 条 件 成 立 不成立
程序模块 程序模块 新程序模块 直到条件不成立时为出 成立∠条件 不成立 L (b) 图34直到型循环结构
图 3.4 直到型循环结构 新程序模块 (a) (b) (c) 直到条件不成立时为止 程序模块 程序模块 成 立 不成立 条 件
32C语句概述 C语言是函数式语言,每一个函数是由数据说明部分和执 行语句部分组成。C语言中的所有语句均是执行语句,没有 非执行语句。根据C语言的句法,语句可分为单个语句,复 合语句和空语句。根据结构化程序设计的三个模块大致可分 为:用于顺序结构中的表达式语句、赋值语句、函数调用语 句等;用于分支结构中的i语句、 switch语句、转移语句、标 号语句等;用于循环结构中的 while语句、for语句、 do-while 语句。另外在后两种结构中还可出现 break语句、 continue语 句、复合语句和空语句等作为其中的一部分
3.2 C 语 句 概 述 C语言是函数式语言,每一个函数是由数据说明部分和执 行语句部分组成。C语言中的所有语句均是执行语句,没有 非执行语句。根据C语言的句法, 语句可分为单个语句,复 合语句和空语句。根据结构化程序设计的三个模块大致可分 为: 用于顺序结构中的表达式语句、赋值语句、函数调用语 句等; 用于分支结构中的if语句、switch语句、转移语句、标 号语句等;用于循环结构中的while语句、for语句、do-while 语句。 另外在后两种结构中还可出现break语句、continue语 句、复合语句和空语句等作为其中的一部分
(1)逻辑上每个语句最后都必须有一个分号(),一个语句 可份分写成几行,几个语句也可合写成一行(但不提倡,因其不 和于单步调试) (2)空语句直接由分号(;)组成,常用于控制语句中必须出 现语句之处,它不做任何操作,只在逻辑上起到有一个语句的 作用 (3)复合语句由花括号{}括起的若干个语句,语法上可以 看成是一个语句。复合语句中最后一个语句的分号不能省略。 如下面是一个复合语句: ZFy XZ
(1) 逻辑上每个语句最后都必须有一个分号(;), 一个语句 可分写成几行, 几个语句也可合写成一行(但不提倡, 因其不 利于单步调试)。 (2) 空语句直接由分号(;)组成,常用于控制语句中必须出 现语句之处,它不做任何操作,只在逻辑上起到有一个语句的 作用。 (3) 复合语句由花括号{ }括起的若干个语句, 语法上可以 看成是一个语句。复合语句中最后一个语句的分号不能省略。 如下面是一个复合语句: {z=x+y; y=x/z; x=z-y; }