《《解析C程序设计》绪论ppt.ppt》由会员分享,可在线阅读,更多相关《《解析C程序设计》绪论ppt.ppt(38页珍藏版)》请在金锄头文库上搜索。
1、解析解析C程序设计程序设计为什么要学为什么要学C?C是面向过程的语言,能够知其然,也能够知其所以然。是面向过程的语言,能够知其然,也能够知其所以然。C是硬件产品开发和底层程序开发人员应该掌握的一种程序是硬件产品开发和底层程序开发人员应该掌握的一种程序设计工具之一设计工具之一 。C语言以其功能丰富、表达能力强、使用灵活方便、应用面语言以其功能丰富、表达能力强、使用灵活方便、应用面广、目标程序效率高、可移植性好而深得广大程序开发人员广、目标程序效率高、可移植性好而深得广大程序开发人员青睐。青睐。 由于由于C语言具有语法结构简洁精妙、目标代码高效、便于描语言具有语法结构简洁精妙、目标代码高效、便于描
2、述算法、方便深入系统底层等特点,使得大多数操作系统都述算法、方便深入系统底层等特点,使得大多数操作系统都采用采用C语言开发,如:语言开发,如:Windows、Unix、Linux等等 。很多新型的语言都是很多新型的语言都是C语言衍生的,如:语言衍生的,如:C+、Java、C#、等等 。目前社会招聘程序员,很多单位将目前社会招聘程序员,很多单位将C语言作为最基本的开发语言作为最基本的开发工具进行考核。工具进行考核。 2024/8/182024/8/182 2解析解析C C程序设计第程序设计第1 1章章 绪论绪论讲授方法讲授方法解析法解析法u“解析法解析法”是从实际问题入手,剖析求解问题的是从实际
3、问题入手,剖析求解问题的关键点(进行知识的发现),然后结合问题讲解关键点(进行知识的发现),然后结合问题讲解需要的知识点,最后给出问题的求解办法和实现需要的知识点,最后给出问题的求解办法和实现过程,并举一反三。过程,并举一反三。u各章节以问题入手,分析并讲述需要的知识点,各章节以问题入手,分析并讲述需要的知识点,然后再实现该问题,并通过思考题延伸知识点或然后再实现该问题,并通过思考题延伸知识点或引入新的问题,环环相扣,层层推进,充分体现引入新的问题,环环相扣,层层推进,充分体现解析法的精髓,达到通俗易懂、由浅入深的效果,解析法的精髓,达到通俗易懂、由浅入深的效果,举一反三,培养迁移知识的能力。
4、举一反三,培养迁移知识的能力。 2024/8/182024/8/183 3解析解析C C程序设计第程序设计第1 1章章 绪论绪论学习方法学习方法u听课听课主要由教师引导,师生互动的学习过程。主要由教师引导,师生互动的学习过程。u自学自学在教师的指导下,学生自学。看书学习理论知识,上机培养动在教师的指导下,学生自学。看书学习理论知识,上机培养动手能力。手能力。u上机上机作为计算机课程,实践性非常强,因此要多上机实验,强化动作为计算机课程,实践性非常强,因此要多上机实验,强化动手能力,提高编程能力。手能力,提高编程能力。u听课、自学、上机相结合的学习方法,是学习听课、自学、上机相结合的学习方法,是
5、学习C C程程序设计的最佳方法。序设计的最佳方法。2024/8/182024/8/184 4解析解析C C程序设计第程序设计第1 1章章 绪论绪论全书内容全书内容l第一部分:第一部分:C 语语 言言 入入 门门 部分:部分: 第第12章章l第二部分:程序设计基础部分:第二部分:程序设计基础部分: 第第35章章l第三部分:程序设计提高部分:第三部分:程序设计提高部分: 第第67章章l第四部分:综合程序设计部分:第四部分:综合程序设计部分: 第第8章章l第五部分:实用程序设计部分:第五部分:实用程序设计部分: 第第9章章2024/8/182024/8/185 5解析解析C C程序设计第程序设计第1
6、 1章章 绪论绪论章节安排章节安排l第第1章章 绪论绪论l第第2章章 简单简单C程序设计程序设计l第第3章章 自定义函数设计自定义函数设计l第第4章章 控制结构程序设计控制结构程序设计 l第第5章章 模块化程序设计模块化程序设计 l第第6章章 构造类型程序设计构造类型程序设计 l第第7章章 文件处理程序设计文件处理程序设计 l第第8章章 高级程序设计高级程序设计 l第第9章章 实用程序设计实用程序设计2024/8/182024/8/186 6解析解析C C程序设计第程序设计第1 1章章 绪论绪论第第1章章 绪论绪论本章内容本章内容l认识程序认识程序lC语言概述语言概述lC程序及运行程序及运行l
7、学习建议学习建议2024/8/182024/8/188 8解析解析C C程序设计第程序设计第1 1章章 绪论绪论1.1 认识程序认识程序l计算机是用来延伸人的能力的工具,需要人计算机是用来延伸人的能力的工具,需要人来驾驭来驾驭l我们的职责是让非计算机专业的人更容易驾我们的职责是让非计算机专业的人更容易驾驭它驭它l完成这一目标的主要手段之一就是完成这一目标的主要手段之一就是“编程(编程(Programming)”2024/8/182024/8/189 9解析解析C C程序设计第程序设计第1 1章章 绪论绪论1.1.1 程序的直观理解程序的直观理解l“程序程序”一词来自生活,通常指完成某些事一词来
8、自生活,通常指完成某些事务的一种既定方式和过程。务的一种既定方式和过程。 例:例:(1)起床)起床(2)刷牙)刷牙(3)洗脸)洗脸(4)吃饭)吃饭(5)早自习)早自习2024/8/182024/8/181010解析解析C C程序设计第程序设计第1 1章章 绪论绪论例例1-11-1求圆的面积和周长求圆的面积和周长l根据数学知识,我们知道解决问题的步骤根据数学知识,我们知道解决问题的步骤如下:如下:l步骤步骤1输入圆的半径输入圆的半径r;l步骤步骤2圆的面积圆的面积pi*r*r;l步骤步骤3圆的周长圆的周长2*pi*r;l步骤步骤4输出得结果。输出得结果。 2024/8/182024/8/1811
9、11解析解析C C程序设计第程序设计第1 1章章 绪论绪论例例1-2 求求1+2+100l根据存储程序原理,解决问题的步骤如下:根据存储程序原理,解决问题的步骤如下:(1)设置)设置S为存储计算结果的存储单元,初值为为存储计算结果的存储单元,初值为0;(2)把)把S和和1相加,所得的和记为相加,所得的和记为S;(3)将)将S和和2相加,所得的和记为相加,所得的和记为S;(102)将)将S和和99相加,所得的和记为相加,所得的和记为S;(103)将)将S和和100相加,所得的和记为相加,所得的和记为S;(104)打印)打印S的值,的值,S即为累加之和。即为累加之和。2024/8/182024/8
10、/181212解析解析C C程序设计第程序设计第1 1章章 绪论绪论程序的特征程序的特征日常生活及解决数学问题中的程序特征应具备:日常生活及解决数学问题中的程序特征应具备:l开始与结束开始与结束l按部就班地进行按部就班地进行l基本动作基本动作l完成工作完成工作l用某种形式描述用某种形式描述l那么,计算机程序又是什么呢?那么,计算机程序又是什么呢?2024/8/182024/8/181313解析解析C C程序设计第程序设计第1 1章章 绪论绪论1.1.2 1.1.2 计算机程序计算机程序计算机程序是人与计算机交流信息的基本计算机程序是人与计算机交流信息的基本方式。人通过计算机程序指挥计算机的活方
11、式。人通过计算机程序指挥计算机的活动。动。计算机程序是能在计算机上解决问题的步计算机程序是能在计算机上解决问题的步骤,是人向计算机发出的指令序列。骤,是人向计算机发出的指令序列。2024/8/182024/8/181414解析解析C C程序设计第程序设计第1 1章章 绪论绪论“冯冯诺依曼机诺依曼机”结构结构输入输入/输出输出设备设备存储器存储器运算器运算器控制器控制器源程序源程序和输入数据和输入数据输出结果输出结果取出数据取出数据存入数据存入数据操作命令操作命令存取命令存取命令取出取出程序指令程序指令输入输出输入输出命令命令计算结果计算结果CPU大脑大脑记忆记忆装置装置眼睛眼睛和耳和耳朵朵20
12、24/8/182024/8/181515解析解析C C程序设计第程序设计第1 1章章 绪论绪论计算机程序概念计算机程序概念l存储程序原理是计算机工作的基本原理,程序是存储程序原理是计算机工作的基本原理,程序是它的核心。它的核心。l计算机程序是在计算机中解决问题的步骤描述。计算机程序是在计算机中解决问题的步骤描述。简称程序。简称程序。2024/8/182024/8/181616解析解析C C程序设计第程序设计第1 1章章 绪论绪论1.1.3 计算机程序在硬件层次的意义计算机程序在硬件层次的意义l在硬件层次,程序是机器指令的序列,为完成某在硬件层次,程序是机器指令的序列,为完成某项功能所需要执行的
13、命令序列,这些命令序列按项功能所需要执行的命令序列,这些命令序列按照一定的结构合理地、有机地组合在一起,并以照一定的结构合理地、有机地组合在一起,并以文件的形式存储在磁盘上,故成为命令文件。文件的形式存储在磁盘上,故成为命令文件。2024/8/182024/8/181717解析解析C C程序设计第程序设计第1 1章章 绪论绪论程序与软件程序与软件l早期软件的概念与程序是等价的,软件就是早期软件的概念与程序是等价的,软件就是程序。程序。l随着时间的推移,软件的概念在发展,广义随着时间的推移,软件的概念在发展,广义地讲,软件是程序、数据、文档等的总称。地讲,软件是程序、数据、文档等的总称。l一般仍
14、将程序的集合简称为软件。一般仍将程序的集合简称为软件。2024/8/182024/8/181818解析解析C C程序设计第程序设计第1 1章章 绪论绪论计算机基本工作过程计算机基本工作过程l整个过程的执行者是硬件,但硬件是受软件控制的整个过程的执行者是硬件,但硬件是受软件控制的l编程,就是编写软件,使硬件按照人的意图工作编程,就是编写软件,使硬件按照人的意图工作2024/8/182024/8/181919解析解析C C程序设计第程序设计第1 1章章 绪论绪论计算机内部工作过程计算机内部工作过程程程序序和和数数据据执行结果执行结果2024/8/182024/8/182020解析解析C C程序设计
15、第程序设计第1 1章章 绪论绪论两种翻译方式两种翻译方式解释方式语言通过运行解释方式语言通过运行“解释器解释器”一条一条一条地解释语句并执行,不生成目标代一条地解释语句并执行,不生成目标代码。码。编译方式将高级语言源程序翻译成目标编译方式将高级语言源程序翻译成目标代码程序,再运行目标代码得到结果。代码程序,再运行目标代码得到结果。C C语言就是一种编译语言!语言就是一种编译语言! 2024/8/182024/8/182121解析解析C C程序设计第程序设计第1 1章章 绪论绪论1.2 C语言概述语言概述lC C语言是目前世界上流行、使用最广泛的高语言是目前世界上流行、使用最广泛的高级程序设计语
16、言。级程序设计语言。 lC C语言是一种结构化语言。它层次清晰,便语言是一种结构化语言。它层次清晰,便于按模块化方式组织程序,易于调试和维于按模块化方式组织程序,易于调试和维护。护。 l语言集高级语言和低级语言的功能于一语言集高级语言和低级语言的功能于一体。既可用于系统软件的开发,也适合于体。既可用于系统软件的开发,也适合于应用软件的开发。应用软件的开发。2024/8/182024/8/182222解析解析C C程序设计第程序设计第1 1章章 绪论绪论1.2.1 C语言的发展语言的发展C语言是语言是1972年由美国贝尔实验室的年由美国贝尔实验室的DennisRitchie设计发明的,并首次在设
17、计发明的,并首次在UNIX操作系统的操作系统的DECPDP-11计算机上使用。计算机上使用。 2024/8/182024/8/182323解析解析C C程序设计第程序设计第1 1章章 绪论绪论C语言的设计者Dennis M. Ritchie2024/8/182024/8/182424解析解析C C程序设计第程序设计第1 1章章 绪论绪论ALGOL60 CPL BCPL B C1963年1967年1970年1972年1960年C标准: 标准标准C:K&R合著合著The C Programming Language ANSI C:1983年年 87 ANSI C:1987年年 国际标准的国际标准的
18、ANSI C :1990年年2024/8/182024/8/182525解析解析C C程序设计第程序设计第1 1章章 绪论绪论1.2.1 C语言的特点语言的特点C语语言言是是一一种种结结构构化化语语言言。它它层层次次清清晰晰,具具有有顺顺序序、选选择择、循循环环三三种种程程序序控控制制结结构构,易易于于调调试试和和维护。维护。语语言言的的表表现现能能力力和和处处理理能能力力极极强强。它它不不仅仅具具有有丰丰富富的的运运算算符符和和数数据据类类型型,便便于于实实现现各各类类复复杂杂的的数数据据结结构构。它它还还可可以以直直接接访访问问内内存存的的物物理理地地址址,进行位进行位(bit)一级的操作
19、。一级的操作。语语言言具具有有灵灵活活的的语语法法格格式式。相相对对于于Pascal等等高高级级语语言言,其其对对语语法法格格式式的的要要求求不不太太严严格格,更更利利于于程序员发挥自己的编程特点。程序员发挥自己的编程特点。2024/8/182024/8/182626解析解析C C程序设计第程序设计第1 1章章 绪论绪论C语言的特点语言的特点语语言言兼兼有有高高级级语语言言和和低低级级语语言言的的特特点点。由由于于语语言言实实现现了了对对硬硬件件的的编编程程操操作作,因因此此语语言言集集高高级级语语言言和和低低级级语语言言的的功功能能于于一一体体。既既可可用用于于系系统统软软件件的的开开发发,
20、也也适适合合于于应应用用软软件件的的开开发发。历历史史上上,就就是是因因为为要要快快速速开开发发公公认认的的优优秀秀的的UNIX操操作作系系统统,才才导致语言的出现。导致语言的出现。2024/8/182024/8/182727解析解析C C程序设计第程序设计第1 1章章 绪论绪论C语言的特点语言的特点语语言言程程序序简简洁洁紧紧凑凑,方方便便用用户户学学习习使使用用。只只有有32个个关关键键字字、9种种控控制制语语句句、主主要要用用小小写字母表示。写字母表示。语语言言程程序序可可移移植植性性好好,可可以以方方便便在在不不同同操作系统平台之间转换使用。操作系统平台之间转换使用。语语言言程程序序代
21、代码码质质量量高高,实实现现相相同同功功能能的的代代码码比比其其它它计计算算机机语语言言的的代代码码长长度度短短,因因此程序运行时的系统开销低。此程序运行时的系统开销低。2024/8/182024/8/182828解析解析C C程序设计第程序设计第1 1章章 绪论绪论C语言的特点语言的特点C语言是一种模块化语言。基本组成单位为语言是一种模块化语言。基本组成单位为函数,便于把一大的任务分解为多个小任函数,便于把一大的任务分解为多个小任务模块进行处理。务模块进行处理。C语言具有预处理功能,方便代码的共享。语言具有预处理功能,方便代码的共享。C语言只有一个比较小的内核,其主要的功语言只有一个比较小的
22、内核,其主要的功能都是通过大量的函数来实现的。能都是通过大量的函数来实现的。2024/8/182024/8/182929解析解析C C程序设计第程序设计第1 1章章 绪论绪论学习一门程序设计语言的惟一学习一门程序设计语言的惟一途径就是用它编写程序。途径就是用它编写程序。2024/8/182024/8/183030解析解析C C程序设计第程序设计第1 1章章 绪论绪论1.3 C程序及运行程序及运行例例例例1-3 1-3 上机实现在屏幕上输出字符序列上机实现在屏幕上输出字符序列上机实现在屏幕上输出字符序列上机实现在屏幕上输出字符序列 “ “Hello,WorldHello,World!” !” /
23、*文件名文件名LI1_3.c*/#include /*预处理命令预处理命令*/main() /*主函数主函数*/ printf(hello,world!n);/*库函数,输出字符序列库函数,输出字符序列*/ 2024/8/182024/8/183131解析解析C C程序设计第程序设计第1 1章章 绪论绪论C程序上机步骤编辑链接编译执行file.exe程序代码的录入,生成源程序*.c语法分析查错,翻译生成目标程序*.obj与其它目标程序或库链接装配,生成可执行程序*.exe2024/8/182024/8/183232解析解析C C程序设计第程序设计第1 1章章 绪论绪论C程序编程运行环境程序编程
24、运行环境TC2.02024/8/182024/8/183333解析解析C C程序设计第程序设计第1 1章章 绪论绪论C程序编程运行环境程序编程运行环境TC3.12024/8/182024/8/183434解析解析C C程序设计第程序设计第1 1章章 绪论绪论课堂练习课堂练习在屏幕上显示:在屏幕上显示: * * c world:. * *使用使用TC2.0(for DOS)环境完成)环境完成使用使用TC3.1(for Windows)环境完成)环境完成2024/8/182024/8/183535解析解析C C程序设计第程序设计第1 1章章 绪论绪论建建 议议学好程序设计语言的唯一途径是学好程序设计语言的唯一途径是上机练习上机练习你的编程能力与你在计算机上你的编程能力与你在计算机上投入投入的的时间时间成正比成正比2024/8/182024/8/183636解析解析C C程序设计第程序设计第1 1章章 绪论绪论习题习题1写篇小论文,阐述对写篇小论文,阐述对C的认识(作为平时成的认识(作为平时成绩)。绩)。教材:习题教材:习题1.1、1.2。2024/8/182024/8/183737解析解析C C程序设计第程序设计第1 1章章 绪论绪论思考题思考题C程序由哪些部分组成?程序由哪些部分组成?2024/8/182024/8/183838解析解析C C程序设计第程序设计第1 1章章 绪论绪论