第6章 一维数组与指针程序设计(甘玲).ppt

  1. 1、本文档共131页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 一维数组与指针程序设计(甘玲)

《解析C程序设计(第2版)》第6章 一维数组与指针程序设计 第6章 一维数组与指针程序设计 最高分问题 问题分析 例6-1 实现代码 一维数组 一维数组的定义 一维数组的定义说明 一维数组的初始化 一维数组初始化说明 一维数组初始化说明 一维数组元素的引用 一维数组引用说明 例6-2 30个学生成绩排序 例6-2程序 关键代码(升序) /* 冒泡法排序 */ for(j=0;jN-1;j++) for(i=0;iN-1-j;i++) if(a[i]a[i+1]) { t=a[i]; a[i]=a[i+1]; a[i+1]=t; } 冒泡法排序—降序 关键代码(降序) /* 交换法排序 */ for(i=0;i=N-2;i++) for(j=i+1;j=N-1;j++) if(a[i]a[j]) { t=a[i]; a[i]=a[j]; a[j]=t; } 例6-3 选择法排序 例6-3程序 选择法排序(降序) 选择法排序(降序) 关键代码(降序) /* 选择法排序(降序) */ for(i=0;iN-1;i++) { k=i; for(j=i+1;jN;j++) if(a[j]a[k]) k=j; /* 记录最大值的下标 */ if(i!=k) /* 如果最大值不是第一个比较的数,就交换 */ { t=a[i]; a[i]=a[k]; a[k]=t; } /* 交换两个元素的值 */ } 举一反三 例6-5:查找一个数在数组中的位置 顺序查找演示 例6-5程序 思考题 查找字符位置问题 问题分析 例6-6程序(折半法查找) 字符串 字符数组的初始化 两种方式: 用字符型数据对数组各元素初始化 char a[5]={‘a’,‘b’,‘c’,‘d’,‘e’}; 字符数组 char a[]= {‘a’,‘b’,‘c’,‘d’,‘e’}; 与上面等价 char b[6] = {‘C’,‘h’,‘i’,‘n’,‘a’,‘\0’}; 字符串 char b[6] = {‘C’,‘h’,‘i’,‘n’,‘a’}; 与上面等价 用字符串常量直接对数组初始化 char a[6] = { China}; char b[6] = China; char c[]= I am happy; char d[]= {I am happy}; 字符数组的引用 字符数组的输入输出 字符数组输入输出说明 字符数组与字符串的区别 例6-8程序 例6-9 复制字符串问题 例6-9程序 思考题 变量值交换问题 问题分析 例6-10程序 指针的概念 指针是一个数据项,它的值是其它变量值在内存中的地址。 内存单元编号就是“地址”,变量的地址可以使用运算符获取。当编号为0时,这个指针称为“空指针”,可用NULL表示。 可简单认为:“指针”就是“地址”,“地址”就是“指针”。 指针的用途 直接访问与间接访问 指针变量 指针变量 指针变量 指针变量的指向关系 指针变量的定义 指针变量的定义 也可以使用以下形式定义普通变量、定义指针变量、将指针变量与普通变量建立指向关系: int i,*pi=i; /* 指针变量pi指向变量i */ float m,*pm=m; /* 指针变量pm指向变量m */ 指针变量的说明 指针变量的引用 指针变量名——表示所指变量的地址。如:pi表示i的地址。 *指针变量名——表示所指变量的值。如:*pi表示i的值。 例6-11对两个数排序 程序分析 两个变量的值并没改变; 指针变量的值发生变化,通过指针变量输出升序排列的值。 函数参数——值传递 指针变量作参数——地址传递 数组名作函数参数 例6-12 使用函数实现:求字符在字符串中的位置。 一般情况下给出的字符串为无序字符串,因此在函数中使用顺序查找法实现。 举一反三 有序数组插入问题 问题分析 例6-15程序 例6-15程序(续) 指针的运算 指针变量加(减)一个整数 指针变量每加(或减)1,就指向它指定的数据类型的下一个(或上一个)元素的位

文档评论(0)

wyjy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档