程序的概念与算法
语句1
语句2
语句3
23
例1.2 编写一个C语言程序,输出显示下列图形。 ***************** C语言的学习要努力! *****************
这是一个典型的顺序执行的程序设计,输出三个字符串,
程序是为了解决某个问题而设计,用C语句所写的序列
称为C源程序,它的后缀为(.c) .
C源程序经过编译(Compile)后生成一个目标文件(.obj).
经过链接库函数后生成可执行文件(.exe)。
15
C程序的设计过程如下图所示:
问题的提 出及分析 确定该问 题的算法
用C语言描述算法 建立语言源程序
编译生成.obj 文件
C语言程序设计
1
你对C语言了解程度如何?
调查
(1).对C语言一无所知 (2).听到或看过一些关于C语言的知识
2Байду номын сангаас
努力认真学好 C 语言
教育部规定,每个大学生都要掌握至少一门编程语 言,这样做一定有它的道理: 1. 从技术层面来讲,C语言是我们最值得努力学习 的一门语言:
3
(1). C语言是目前国际上共认的主打语言,是必须 要认真学好的,特别对工科类同学.
语言标准,称ANSI C。
9
C语言的特点和功能
1.C语言是一种结构化语言.
结构化程序设计的基本原则是:模块化原则、自顶向下原则和
逐步求精原则。
2.C语言语句简洁、紧凑,使用方便、灵活.
32个关键字,9种控制语句,程序书写形式自由。
3.C语言程序易于移植.
C语言将与硬件有关的因素从语言主体中分离出来,通过库函
要解决一个复杂的问题,需要仔细的分析与研究此问题,
并进行精确的逻辑分析,找到解决问题的方法,再用计算
机实现。
18
当然,求解一个给定的可解的问题,不同的人可以编写出
不同的程序。 例如判断一个整数的奇偶性,大致分成以下几步: 计算机读入该数; 将该数除以2;
判断余数是否为0;
如果为0,该数为偶数; 否则为奇数. 以上这些解决问题的一系列步骤就是算法,并且可 以用C语言编写成程序,用以解决数的奇偶性问题。
6
如何学会用C语言程序设计:
了解C程序设计语言. 模仿、改写、编写C程序. 通过不断的编程实践,逐步领会和掌握程序设计的基 本思想和方法.
7
教 材
“C语言程序设计”. 唐云廷主编,科技出版社, 2009
参考书
“C程序设计”(第三版) 潭浩强著 清华大学出版社
8
C语言的发展历史与特点
11
第1章
程序的概念与算法
12
1.1 程序的概念
程序是指把希望计算机做的工作写成一定形式的指令, 并把它们存储在计算机的内部存储器中。 当人们给出命令之后,它就按指令操作顺序自动进行, 把这种可以连续执行的一条条指令的集合称为“程序”。 目前,正在使用的计算机程序设计语言有很多种,有 些语言是面向机器的,如二进制语言,而多数是面向问题 的语言。
连接有关库函数后 生成可执行文件
运行程序并输 出正确的结果
16
1.2 算法与流程图
什么是算法? 算法是指解决问题所使用的一系列合乎逻辑的解题步骤. 一个程序应包括两方面内容: (1). 对数据的描述. 要指定数据的类型和数据的组织形式, 即数据结构.
17
(2). 对操作的描述, 操作步骤,即算法(algorithm). 著名计算机科学家Wirth(沃思)提出: 数据结构+算法=程序 在计算机科学中,算法要用计算机算法语言描述.
3. “打好一个基础,掌握二种工具”: 数学基础,计算机和外语二种工具。
迎接“省计算机二级等级考试”。
5
4. 当然,C语言是我们接触的第一门高级语言,刚
开始学习计算机语言会有一定难度(新的概念,新 的理论 和方法,相当多的语法点要理解和记忆等).
并且,C语言是计算机高级语言中较为难学的一 门语言,更需要我们投入更多精力去学习,掌握. 我们应该为自己即将学习和掌握一门编程语言而 高兴和自豪.
19
什么是流程图? 流程图是一种用图解方式说明,解决一个问题所要的一 系列操作。 流程图比文字更容易理解,更加直观.
流程图中的符号含义如下所示:
20
常用基本组件
含义
程序的入口和出口 加工、处理 条件判断 控制流 连接符 输入输出
流程图的符号及含义
21
例1.1 从键盘输入两个数,求这两数 之和,并把结果输出. 画出此问题的流程图。
数或其他实用程序实现它们。
10
4.C语言有强大的处理能力.
5.生成的目标代码质量高,运行效率高.
6.数据类型检查不严格,表达式出现二义性,不具备数 据越界自动检查功能,运算符的优先级与结合性对初学 者难于掌握.
C语言的功能:
C 语言不仅可以编写系统软件 ( 操作系统 , 语言处理软
件等),也可以编写应用程序.
历史
1972 年:贝尔实验室的 Dennis Ritchie 在 B 语言的基
础上设计并实现了C语言。
1978 年: B.W.Kernighan 和 D.Ritchie (简称 K & R )
合著的《The C Programming Language》是
各种C语言版本的基础,称之为旧标准C语言。
1983 年:美国国家标准化协会( ANSI )制定了新的 C
开始
定义两个变量 输入两数
两数相加
程序流程图
显示结果 结束
22
1.3 结构化程序设计包含的三种结构
结构化程序设计由三种结构组成: 顺序结构、选择结构、循环结构。
1.3.1 顺序结构
顺序结构的程序是一条语句接一 条语句顺序地往下执行的。 例如右图中,先执行语句1,然后 执行语句2,最后执行语句3. 顺序结构的程序是最简单的程序。
13
面向问题的语言都被称为计算机的“高级语言”,如
C与C++语言等。
目前的程序设计一般可分为非结构化程序设计、结构化
程序设计和面向对象的程序设计. C语言是结构化程序设计语言,而C++称为面向对象的 语言。
14
这些语言都是用接近人们习惯的自然语言和数学语言作
为语言的表达形式,人们学习和操作起来感到十分方便。
(2). 有了C语言的知识,可为今后学习后续C语言,
及学习其它语言打下良好的基础.
4
2. 计算机技术是人类智慧的结晶,通过学习一门
计算机语言,加深对这一成果的体会,改进我 们的思维方式,从另一个侧面提高我们的素质 水平。
同时,通过学习计算机语言,对我们今后学 习,使用计算机的其它操作,也会带来很大的 帮助。