《C程序设计实例教程》上ppt

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

把用C语言写的源代码转换为可被计算机理解的机器代码 (二进制代码)。这种把源程序翻译成机器码的过程称为 “编译”,这个翻译叫“编译程序(编译器)” 源程序经编译程序编译生成目标程序,文件名形式为*.OBJ
把通用的一些子程序(库函数)链接到目标程序中,形成可执 行文件,文件名形式为*.EXE
源程序 目标程序 可执行程序 内容 程序设计语言 机器语言 机器语言 可执行 不可以 不可以 可以 文件名后缀 .c .obj .exe
1.1 计算机完成任务——程序化
【例1-2】求两个数中最大数
步骤:1. 从键盘输入两个数存于变量a和b中;
2. 如果a>b则max←a,否则max←b;
3. 输出max;
4. 结束。
小结:工作“程序”实际是一个解决问题的方法和步 骤,严格说叫“算法”
1.2 解决问题的方法和步骤——算法
算法 计算机解决问题的方法和步骤 ,是解决问题的 核心。 算法概括为以下三大步 1、输入 2、处理 3、输出 变量 可以改变的量,在计算机里,实际上是存储数据 的(内存)空间单元。
1.3 用计算机语言表达算法——程序
【例1-3】求最大数的C程序
#include<stdio.h>
void main()
{ int a, b, max;
主函数。 程序的入口
标准输入输出 预处理
定义变量
从键盘输入两 个整数,给变 量赋值
scanf("%d,%d", &a, &b); if(a>b) max=a;
1.5 调试程序的基本操作步骤
程序的开发过程
编辑源程序
直接面对的程序文本
编译生成目标程序
开发平台自动生成
链接生成可执行文件
运行程序
上机操作流程
编辑源程序 是 编译 有错吗? 否 生成目标文件 是 链接 有错吗? 题的方法和步骤,与程序设计语言无关
本章难点:
C程序的上机操作
1.1 计算机完成任务——程序化
用计算机完成任务,需要把完成任务的步骤告诉计 算机,计算机将按照步骤做事。 【例1-1】毕业典礼的“程序” 步骤:1. 主持人宣布开始; 2. 校长致辞; 3. 颁发毕业证书; 4. 会议结束。
问题:该“程序”完善吗?如果校长不能到场怎么办? “颁发毕业证书”这个任务能一次完成吗?
程序是算法的具体实现 ,比如把某个算法写成C语言
程序 结构化程序设计方法——自顶向下逐步细化
程序需要标准输入 输出函数 主函数。程序的入口
牢记!
1. 了解C程序结构
程序由若干函数组成,其中函数是完成一 个任务的子任务 程序有且只有一个主函数main(),它决定 了程序的入口 程序从main()开始执行,在main()中结束, 其他函数通过调用得以执行
2. 熟悉C提供的基本功能
用高级语言写的程序为“源程序”,如C语言源程序的文件 名形式为*.C
算法的表示(附录E)
自然语言 通俗易懂,容易产生歧义 流程图
标准符号 三种基本结构(顺序、选择、循环)
N-S流程图 省略了流程图中的流程线,适于结构化程序设计 伪代码 介于自然语言和计算机语言之间,混合使用文字和符号 PAD图
1.3 用计算机语言表达算法——程序
根据算法描述,用计算机程序设计语言来实现。 程序是算法的具体实现
3. 掌握分析问题的方法
解决:如果两数之和不大于第三个数,则不可能构 成三角形,结束。 继续修改上面的算法,进一步细化。
步1:输入三个正数; 步2:如果某个数为非正数,则转第1步;
步3:如果其中满足两数之和不大于第三个数,则转第5步;
否则,判断是何种三角形 步4:输出结论 步5:结束 算法是否完善?如果不完善,还需进一步细化。
《C程序设计实例教程》 上
梁立
第1章 概述
第2章 用C语言表达程序
第3章 控制结构
第1章 概述
主要内容
1.计算机完成任务——程序化 2.解决问题的方法和步骤——算法 3.用计算机语言表达算法——程序 4.C程序设计的基本思路 5.调试程序的基本操作步骤
学习目标
本章重点:
理解算法和程序的概念
掌握C程序的基本结构
else max=b;
}
换行符
printf ( " %d\n ", max);
格式字符, 表示以十进制输出变量max的值
【例1-3】的流程图与PAD图
开始
输入两个数存于变量a,b
a > b?
输入两个数存于变量a, b max ← a
max ← a
max ← b
a > b 吗? max ← b 输出变量max
3. 掌握分析问题的方法
解决:判断输入的三个数,只要有一个不是正数, 则要求用户重新输入。 继续修改上面的算法,进一步细化。
步1:输入三个正数; 步2:如果某个数为非正数,则转第1步;
步3:判断是何种三角形;
步4:输出结论; 步5:结束。 如果两数之和不大于第三个数(考虑形成三角形的
条件),怎么办?
1.1 计算机完成任务——程序化
认真考虑存在的问题,修改工作程序 步骤:1. 主持人宣布开始; 2. 如果校长到场,则校长致辞,否则教务长 致辞; 3. 逐个颁发毕业证书,直到全部颁发结束; 4. 会议结束。 注意: 计算机按照工作程序从上到下一步一步地顺序执 行。步骤中的每一步必须保证是计算机力所能及的。
3. 掌握分析问题的方法
基本方法: 结构化程序设计方法 基本策略:
自顶向下,逐步细化。把一个较大的不易解决的 问题分解成几个子问题,每一个子问题又如法炮 制,进一步分解,直到都容易写出程序为止。
3. 掌握分析问题的方法
【例1-4】输入三个正数,判断它们能组成什么样的 三角形。 分析:对一个基本问题,按照“输入-处理-输出”模 式。首先得到以下算法: 步1:输入三个正数; 步2:判断这三个数可以组成哪种三角形; 步3:输出结论; 步4:结束。 程序执行时,用户输入三个数,如果输入 非正数,怎么办?
输出变量max
图1.2 “求最大数”的PAD图
结束
图1.1 “求最大数”的流程 图
1.4 C程序设计的基本思路 了解C程序结构 熟悉C提供的基本功能 掌握分析问题的方法
1. 了解C程序结构
框架结构
#include <stdio.h>
void main() { // 定义变量 // 程序主体,三个部分:输入、 处理、输出 }
相关文档
最新文档