C程序设计语言基础.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《C程序设计语言基础.ppt》由会员分享,可在线阅读,更多相关《C程序设计语言基础.ppt(37页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、第第2 2章章 C C程序设计语言基础程序设计语言基础C程序设计语言作为本书中数据结构的算法描述语言,程序设计语言作为本书中数据结构的算法描述语言,既具有高级语言的特点,又具有汇编语言的特点,被广泛既具有高级语言的特点,又具有汇编语言的特点,被广泛应用于系统软件设计和应用软件设计,并且经久不衰。本应用于系统软件设计和应用软件设计,并且经久不衰。本章主要目的是复习章主要目的是复习C程序设计语言的一些重点和难点,为程序设计语言的一些重点和难点,为数据结构的学习扫清障碍。数据结构的学习扫清障碍。2.1 2.1 开发环境介绍开发环境介绍C程序设计语言(也常称为程序设计语言(也常称为C语言)的开发环境有
2、语言)的开发环境有LCC、Visual C+、Borland C+等多种,本节主要介绍等多种,本节主要介绍常使用的和开发环境。常使用的和开发环境。开发环境介绍开发环境介绍1 运行运行2 环境设置环境设置3 的使用的使用开发环境介绍开发环境介绍用编写用编写C语言程序,需要两个步骤:一是建立一个控语言程序,需要两个步骤:一是建立一个控制台项目;二是在该控制台项目中添加一个制台项目;二是在该控制台项目中添加一个.C的文件。的文件。2.2 2.2 递归与非递归递归与非递归一个较大的程序包含若干个具有独立的功能的模块,一个较大的程序包含若干个具有独立的功能的模块,每一个模块实现一个特定的功能,这才是良好
3、的程序设计每一个模块实现一个特定的功能,这才是良好的程序设计风格。在风格。在C语言中,通过函数实现模块的功能,一个语言中,通过函数实现模块的功能,一个C语言语言程序由一个主函数和若干个函数组成。递归是程序由一个主函数和若干个函数组成。递归是C语言程序语言程序设计中常见的函数调用形式,也是学习设计中常见的函数调用形式,也是学习C语言的一个重点语言的一个重点和难点。和难点。2.2.1 2.2.1 函数的递归调用函数的递归调用函数的递归调用指的是在调用一个函数的过程中,又函数的递归调用指的是在调用一个函数的过程中,又出现了对函数自身的调用,这种函数称为递归函数。其中,出现了对函数自身的调用,这种函数
4、称为递归函数。其中,递归调用分为直接递归调用和间接递归调用。一个函数在递归调用分为直接递归调用和间接递归调用。一个函数在函数定义体内直接调用自己称为直接递归调用,一个函数函数定义体内直接调用自己称为直接递归调用,一个函数在经过一系列的中间调用,通过其他函数调用自己的称为在经过一系列的中间调用,通过其他函数调用自己的称为间接递归调用。间接递归调用。2.2.2 2.2.2 递归应用举例递归应用举例下面我们以一个例子讲解递归的调用。下面我们以一个例子讲解递归的调用。2.2.3 2.2.3 一般递归转化为非递归一般递归转化为非递归通过分析递归实现求通过分析递归实现求n个自然数的和,我们可以把它个自然数
5、的和,我们可以把它转化为非递归实现。转化为非递归实现。迭代与递归迭代与递归:迭代和递归是程序设计中常用的两种结:迭代和递归是程序设计中常用的两种结构。任何能使用递归解决的问题都能使用迭代的方法解决。构。任何能使用递归解决的问题都能使用迭代的方法解决。迭代和递归的区别是:迭代使用的是循环结构,递归使用迭代和递归的区别是:迭代使用的是循环结构,递归使用的是选择结构。使用递归能够使程序的结构更清晰,设计的是选择结构。使用递归能够使程序的结构更清晰,设计出的程序更简洁、程序更容易让人理解。出的程序更简洁、程序更容易让人理解。2.3 2.3 指针指针指针是指针是C语言中最难掌握的概念,但同时也是最重要语
6、言中最难掌握的概念,但同时也是最重要的概念。指针常常用在函数的参数传递和动态分配内存中,的概念。指针常常用在函数的参数传递和动态分配内存中,在数据结构中,指针的使用也非常频繁。指针常常与地址、在数据结构中,指针的使用也非常频繁。指针常常与地址、变量、数组和函数联系在一起。本节的主要学习内容是大变量、数组和函数联系在一起。本节的主要学习内容是大家常常容易混淆的概念,包括指针变量、指针变量的引用、家常常容易混淆的概念,包括指针变量、指针变量的引用、指针与数组、函数指针与指针函数。指针与数组、函数指针与指针函数。2.3.1 2.3.1 指针变量指针变量指针是一种变量,也称指针变指针是一种变量,也称指
7、针变量,它的值是内存地址。一般的变量,它的值是内存地址。一般的变量通常直接包含一个具体的值,例量通常直接包含一个具体的值,例如整数、浮点数和字符。指针包含如整数、浮点数和字符。指针包含的是变量的地址,而变量又拥有自的是变量的地址,而变量又拥有自己的具体值。变量名直接引用了一己的具体值。变量名直接引用了一个值,指针是间接地引用了一个值。个值,指针是间接地引用了一个值。一个变量的地址称为该变量的一个变量的地址称为该变量的“指针指针”。如果有一个变量用来存。如果有一个变量用来存放另一个变量的地址,则称这个变放另一个变量的地址,则称这个变量为指针变量。在量为指针变量。在C语言中,变量语言中,变量在使用
8、前都需要提前声明。在使用前都需要提前声明。2.3.1 2.3.1 指针变量指针变量int q=5,*qPtr;qPtr=&q;2.3.2 2.3.2 指针变量的引用指针变量的引用指针变量和变量一样,都可以对数据进行操作,指针指针变量和变量一样,都可以对数据进行操作,指针变量的操作主要是通过取地址运算符变量的操作主要是通过取地址运算符&和指针运算符和指针运算符*进行进行实现的。例如,实现的。例如,&a指的是变量指的是变量a的地址,的地址,*ptr表示变量表示变量ptr所指向的内存单元存放的内容。所指向的内存单元存放的内容。例例2_3 变量与指向该变量的指针演示程序。变量与指向该变量的指针演示程序
9、。2.3.3 2.3.3 指针与数组指针与数组1指向数组元素的指针指向数组元素的指针int a5=10,20,30,40,50;int*aPtr;2.3.3 2.3.3 指针与数组指针与数组指针引用数组元素的应用举例。指针引用数组元素的应用举例。例例2_4 用指针引用数组元素并打印输出。用指针引用数组元素并打印输出。2.3.3 2.3.3 指针与数组指针与数组2数组指针数组指针int(*p)4;int a34=1,2,3,4,5,6,7,8,9,10,11,12;p=a;2.3.3 2.3.3 指针与数组指针与数组数组指针的应用举例。数组指针的应用举例。例例2_5 用指针引用数组元素并打印输出
10、。用指针引用数组元素并打印输出。2.3.3 2.3.3 指针与数组指针与数组3指针数组指针数组指针数组是一个数组,数组中的元素是指针类型的数指针数组是一个数组,数组中的元素是指针类型的数据。也就是说,指针数组中的元素,每一个都是一个指针据。也就是说,指针数组中的元素,每一个都是一个指针变量。指针数组的定义如下:变量。指针数组的定义如下:int*p4;2.3.3 2.3.3 指针与数组指针与数组指针数组的应用举例。指针数组的应用举例。例例2_6 用指针数组保存字符串并将字符元素并打印输用指针数组保存字符串并将字符元素并打印输出。出。2.3.4 2.3.4 函数指针与指针函数函数指针与指针函数函数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计语言 基础
![提示](https://www.deliwenku.com/images/bang_tan.gif)
限制150内