- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2章 C程序设计语言基础 C程序设计语言作为本书中数据结构的算法描述语言,既具有高级语言的特点,又具有汇编语言的特点,被广泛应用于系统软件设计和应用软件设计,并且经久不衰。本章主要目的是复习C程序设计语言的一些重点和难点,为数据结构的学习扫清障碍。 2.1 开发环境介绍 C程序设计语言(也常称为C语言)的开发环境有LCC、Turbo C2.0、Visual C++、Borland C++等多种,本节主要介绍常使用的Turbo C2.0和Visual C++6.0开发环境。 2.1.1 Turbo C 2.0开发环境介绍 1 .运行Turbo C2.0 2 .Turbo C2.0环境设置 3 .Turbo c2.0的使用 2.1.2 Visual C++6.0开发环境介绍 用Visual C++6.0编写C语言程序,需要两个步骤:一是建立一个控制台项目;二是在该控制台项目中添加一个.C的文件。 2.2 递归与非递归 一个较大的程序包含若干个具有独立的功能的模块,每一个模块实现一个特定的功能,这才是良好的程序设计风格。在C语言中,通过函数实现模块的功能,一个C语言程序由一个主函数和若干个函数组成。递归是C语言程序设计中常见的函数调用形式,也是学习C语言的一个重点和难点。 2.2.1 函数的递归调用 函数的递归调用指的是在调用一个函数的过程中,又出现了对函数自身的调用,这种函数称为递归函数。其中,递归调用分为直接递归调用和间接递归调用。一个函数在函数定义体内直接调用自己称为直接递归调用,一个函数在经过一系列的中间调用,通过其他函数调用自己的称为间接递归调用。 2.2.2 递归应用举例 下面我们以一个例子讲解递归的调用。 2.2.3 一般递归转化为非递归 通过分析递归实现求n个自然数的和,我们可以把它转化为非递归实现。 迭代与递归:迭代和递归是程序设计中常用的两种结构。任何能使用递归解决的问题都能使用迭代的方法解决。迭代和递归的区别是:迭代使用的是循环结构,递归使用的是选择结构。使用递归能够使程序的结构更清晰,设计出的程序更简洁、程序更容易让人理解。 2.3 指针 指针是C语言中最难掌握的概念,但同时也是最重要的概念。指针常常用在函数的参数传递和动态分配内存中,在数据结构中,指针的使用也非常频繁。指针常常与地址、变量、数组和函数联系在一起。本节的主要学习内容是大家常常容易混淆的概念,包括指针变量、指针变量的引用、指针与数组、函数指针与指针函数。 2.3.1 指针变量 指针是一种变量,也称指针变量,它的值是内存地址。一般的变量通常直接包含一个具体的值,例如整数、浮点数和字符。指针包含的是变量的地址,而变量又拥有自己的具体值。变量名直接引用了一个值,指针是间接地引用了一个值。 一个变量的地址称为该变量的“指针”。如果有一个变量用来存放另一个变量的地址,则称这个变量为指针变量。在C语言中,变量在使用前都需要提前声明。 2.3.1 指针变量 int q=5,*qPtr; qPtr=q; 2.3.2 指针变量的引用 指针变量和变量一样,都可以对数据进行操作,指针变量的操作主要是通过取地址运算符和指针运算符*进行实现的。例如,a指的是变量a的地址,*ptr表示变量ptr所指向的内存单元存放的内容。 例2_3 变量与指向该变量的指针演示程序。 2.3.3 指针与数组 1.指向数组元素的指针 int a[5]={10,20,30,40,50}; int *aPtr; 2.3.3 指针与数组 指针引用数组元素的应用举例。 例2_4 用指针引用数组元素并打印输出。 2.3.3 指针与数组 2.数组指针 int (*p)[4]; 2.3.3 指针与数组 数组指针的应用举例。 例2_5 用指针引用数组元素并打印输出。 2.3.3 指针与数组 3.指针数组 指针数组是一个数组,数组中的元素是指针类型的数据。也就是说,指针数组中的元素,每一个都是一个指针变量。指针数组的定义如下: int *p[4]; 2.3.3 指针与数组 指针数组的应用举例。 例2_6 用指针数组保存字符串并将字符元素并打印输出。 2.3.4 函数指针与指针函数 函数指针与指针函数也是常常容易混淆的概念。与数组指针和指针数组类似,前者强调的指针,后者强调的是函数。 1.函数指针 2.指针函数 2.3.4 函数指针与指针函数 函数指针应用举例。 例2_7 通过一个函数求两个数的和,并通过函数指针调用该函数。 2.3.4 函数指针与指针函数 函数指针应用举例。 例2_8 函数指针作为函数参数,实现冒泡排序的升序排列和降序排列。 2.4 参数传递 在C语言中,函数的参数传递的方式通常有两种:一种是传值的方式,另一种是传地址的方式。参数传递
您可能关注的文档
最近下载
- 汉语口语速成入门篇上 第九课 你家有几口人?教案资料.ppt VIP
- DZ∕T 0291-2015 饰面石材矿产地质勘查规范.pdf
- 太阳能路灯工程施工组织方案的编制与应用指南.docx VIP
- 教育行业在线教学平台建设与运营管理方案.doc VIP
- 2025年国家开放大学电大《公共部门人力资源管理》机考3套真题题库及.docx VIP
- (2024版)小学一年级道德与法治下册第一课《有个新目标》教学设计部编版.pdf VIP
- 中华护理学会专科护士通科题库 .pdf VIP
- 2025天津市华淼给排水研究设计院有限公司对外招聘7人笔试历年参考题库附带答案详解.docx
- 老年社会工作服务项目策划书.docx VIP
- 圆钢方钢管受压承载力计算表.xls VIP
文档评论(0)