第5章 C语言编程基础.ppt





《第5章 C语言编程基础.ppt》由会员分享,可在线阅读,更多相关《第5章 C语言编程基础.ppt(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第5章章 C语言编程基础语言编程基础C语言是语言是Linux系统中最常用的程序设计语言。系统中最常用的程序设计语言。Linux系系统中的大多数软件提供了统中的大多数软件提供了C语言接口和源代码,供用户扩展语言接口和源代码,供用户扩展和改进软件的功能,或基于这些软件构成新软件。正因为如和改进软件的功能,或基于这些软件构成新软件。正因为如此,在开源软件开发过程中可以很容易学习到他人的开发经此,在开源软件开发过程中可以很容易学习到他人的开发经验。验。GNU项目为项目为C语言开发提供了丰富的工具,充分利用现语言开发提供了丰富的工具,充分利用现有的代码资源和这些开发工具可将学习到的知识付诸实践,有的代
2、码资源和这些开发工具可将学习到的知识付诸实践,从而更快速地掌握从而更快速地掌握C语言开发技术。语言开发技术。5.1 程序设计语言的发展程序设计语言的发展程序设计语言是用来描写计算机程序的逻辑语法结构。程序设计语言是用来描写计算机程序的逻辑语法结构。它已成为一种学科,同时也是程序设计者之间的交流方式。它已成为一种学科,同时也是程序设计者之间的交流方式。过去,程序设计语言是针对特定的计算机设计,程序员针对过去,程序设计语言是针对特定的计算机设计,程序员针对计算机的不同结构设计特定算法或者数据结构。随着计算机计算机的不同结构设计特定算法或者数据结构。随着计算机技术的发展,很多程序设计语言已能够运行在
3、多种计算机平技术的发展,很多程序设计语言已能够运行在多种计算机平台上,并能在不同平台之间移植。正是因为如此,程序员才台上,并能在不同平台之间移植。正是因为如此,程序员才会试图使程序代码更容易阅读。在过去的几十年间,大量的会试图使程序代码更容易阅读。在过去的几十年间,大量的编程语言被发明、被取代、被修改或组合在一起。编程语言被发明、被取代、被修改或组合在一起。5.1.1 机器语言机器语言电子计算机由复杂的逻辑电路所组成,它能够电子计算机由复杂的逻辑电路所组成,它能够“认识认识”的仅仅是的仅仅是“0”和和“1”所代表二进制数字信号。最初的计算所代表二进制数字信号。最初的计算机语言,也就是以二进制数
4、字所组成的逻辑序列,称为机器机语言,也就是以二进制数字所组成的逻辑序列,称为机器语言。每个二进制字符称为位(语言。每个二进制字符称为位(bit),),计算机最小的存储单计算机最小的存储单元是元是8个位所组成的比特(个位所组成的比特(Byte)。)。机器语言难于阅读,并机器语言难于阅读,并只能针对特定的计算机编写,代码无法移植。只能针对特定的计算机编写,代码无法移植。5.1.2 汇编语言汇编语言为了减轻程序设计的劳动强度,计算机科学家设计了一为了减轻程序设计的劳动强度,计算机科学家设计了一些简洁的英文缩写来替代用于控制或表明数据类型的二进制些简洁的英文缩写来替代用于控制或表明数据类型的二进制逻辑
5、序列。例如,逻辑序列。例如,“ADD”表示两个变量相加,表示两个变量相加,“IN”表示表示读取端口数据,于是诞生了汇编语言。读取端口数据,于是诞生了汇编语言。5.1.3 高级语言高级语言高级语言的发展也经历了从早期语言到结构化程序设计高级语言的发展也经历了从早期语言到结构化程序设计语言,从面向过程到面向对象的转变。相应的,软件的开发语言,从面向过程到面向对象的转变。相应的,软件的开发也由最初的个体手工作坊式封闭生产,发展为产业化、流水也由最初的个体手工作坊式封闭生产,发展为产业化、流水线式工业化生产。随着程序设计语言的进步,程序设计方法线式工业化生产。随着程序设计语言的进步,程序设计方法随之也
6、愈加丰富。随之也愈加丰富。高级语言的下一个发展目标是面向应用,也就是说:只高级语言的下一个发展目标是面向应用,也就是说:只需要告诉程序你要干什么,程序就能自动生成算法,自动进需要告诉程序你要干什么,程序就能自动生成算法,自动进行处理,这就是非过程化的程序语言。行处理,这就是非过程化的程序语言。5.2 C语言的特点语言的特点C语言,是一种通用的、程序式的编程语言,广泛用于语言,是一种通用的、程序式的编程语言,广泛用于系统与应用软件的开发。具有高效、灵活、功能丰富、表达系统与应用软件的开发。具有高效、灵活、功能丰富、表达力强和较高的移植性等特点,在程序员中备受青睐。力强和较高的移植性等特点,在程序
7、员中备受青睐。C语言语言是由是由UNIX的研制者丹尼斯的研制者丹尼斯里奇(里奇(Dennis Ritchie)和肯和肯汤普逊(汤普逊(Ken Thompson)在在1970年研制出的年研制出的B语言的基础上语言的基础上发展和完善起来的。发展和完善起来的。5.2.1 C语言是中级语言语言是中级语言C语言通常称为中级语言,这是因为它有着与汇编语言语言通常称为中级语言,这是因为它有着与汇编语言类似,能直接访问计算机底层资源的能力,同时它又具备了类似,能直接访问计算机底层资源的能力,同时它又具备了高级语言的各种优点。作为中级语言,高级语言的各种优点。作为中级语言,C允许对位、字节和允许对位、字节和地址
8、这些计算机功能中的基本成分进行操作。地址这些计算机功能中的基本成分进行操作。C语言程序非语言程序非常容易移植,甚至可以设计出能同时运行在常容易移植,甚至可以设计出能同时运行在Linux系统和系统和UNIX、Windows等操作系统上的软件。等操作系统上的软件。5.2.2 C语言是结构化语言语言是结构化语言结构化语言所使用的设计方法为模块化设计方法,每个结构化语言所使用的设计方法为模块化设计方法,每个子问题求解的步骤被定义为模块。在子问题求解的步骤被定义为模块。在C语言中,函数就是模语言中,函数就是模块化的体现。函数之间是相互独立的,函数内的数据只能通块化的体现。函数之间是相互独立的,函数内的数
9、据只能通过接口进行传递。过接口进行传递。C语言程序中,数据与代码是分离的,数语言程序中,数据与代码是分离的,数据在各个函数之间通过接口传递。因此,设计良好的函数能据在各个函数之间通过接口传递。因此,设计良好的函数能够在多个程序间反复使用,构成了代码复用的基础。够在多个程序间反复使用,构成了代码复用的基础。5.2.3 C语言是程序员的语言语言是程序员的语言程序设计语言中,有许多是针对非程序员所设计的语言,程序设计语言中,有许多是针对非程序员所设计的语言,大多数解释性语言都是非程序员的语言,例如大多数解释性语言都是非程序员的语言,例如BASIC、FOXPRO。这一类语言虽然容易学习,但是所生产的程
10、序执这一类语言虽然容易学习,但是所生产的程序执行效率低、可靠性差,不能访问计算机底层的资源。与其形行效率低、可靠性差,不能访问计算机底层的资源。与其形成鲜明对比的是成鲜明对比的是C语言,由于程序生成、修改和现场测试自语言,由于程序生成、修改和现场测试自始至终均由真正的程序员进行,因而它实现了程序员的期望:始至终均由真正的程序员进行,因而它实现了程序员的期望:很少限制,语法自由,具备块结构和独立的函数,以及紧凑很少限制,语法自由,具备块结构和独立的函数,以及紧凑的关键字集合。用的关键字集合。用C语言编程,程序员可以获得高效机器代语言编程,程序员可以获得高效机器代码,其效率几乎接近汇编语言代码。码
11、,其效率几乎接近汇编语言代码。5.3 C语言的程序结构语言的程序结构任何一种程序设计语言都具有特定的语法规则和规定的任何一种程序设计语言都具有特定的语法规则和规定的表达方法。一个程序只有严格按照语言规定的语法和表达方表达方法。一个程序只有严格按照语言规定的语法和表达方式编写,才能保证编写的程序在计算机中能正确地执行,同式编写,才能保证编写的程序在计算机中能正确地执行,同时也便于阅读和理解。时也便于阅读和理解。5.3.1 基本程序结构基本程序结构基本程序结构就是从上至下顺序执行的程序,基本程序结构就是从上至下顺序执行的程序,C语言程语言程序必须有且只有一个主函数,程序从主函数开始执行,直到序必须
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第5章 C语言编程基础 语言 编程 基础

限制150内