网站大量收购独家精品文档,联系QQ:2885784924

数据结构5-数组解析.ppt

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

第五章 数组和广义表 引言: 线性表:L=(a1,a2,...,an),ai是同类型的元素,1≤i≤n 数组: A=(a1,a2,...,an) 若ai是同类型的元素,A是一维数组,1≤i≤n 若ai是同类型的定长线性表,A是多维数组,1≤i≤n 广义表:Ls=(a1,a,...,an) ai可以是同类型的元素或不定长的线性表,1≤i≤n 5.1 数组及其操作 简单地说,向量和矩阵称为数组。 5.1.1 数组的递归定义 1.一维数组是一个定长线性表(a1,a2,...,an )。 其中:ai为元素,i为下标/序号,1≤i≤n (a1,a2,...,an )又称为向量。 2.二维数组是一个定长线性表(?1,?2,...,?m), 其中: ?i=(ai1,ai2,...,ain)为行向量,1≤i≤m 由m个行向量组成,记作: 3.三维数组是一个定长线性表( ?1,?2,...,?p )。 其中: ?k=( ?1,?2,...,?m )为定长二维数组,1≤k≤p 例 三维数组A[1..3,1..4,1..2], p=3, m=4, n=2 例2 #define m 4 //定义符号常量m #define n 5 //定义符号常量n int a[m]; //m个整数的一维数组 char b[m][n]; //m行n列个字符的二维数组 例3 #define m 4 //定义符号常量m #define n 5 //定义符号常量n typedef int ara[m]; //一维数组类型ara typedef char arb[m][n]; //二维数组类型arb ara a; //ara类型的变量a arb b; //arb类型的变量b ?? C语言中定义静态数组时,元素数目必须是常量 错例1 int m=4,n=5; int a[m][n]; //m,n是变量 错例2 int p; scanf(”%d”,p); int c[p]; //p是变量 5.1.3 数组的操作 1.生成一个数组: int a[7];//生成静态一维数组(存储结构) 2.销毁一个数组 3.赋值/修改 a[1]=15;(a[1])++; 4.取元素的值: a[0]=a[1]*2; 5.1.4 程序设计举例 例1 main() { int i,a[10]; //生成一维数组a for (i=0;i10;i++) scanf(”%d”,a[i]); //输入元素 for (i=0;i10;i++) printf(”%d ”,a[i]*a[i]); //输出元素的平方 } 例2 生成动态的10个整数的一维数组 int *pa; //指针变量pa pa=(int *)malloc(10*sizeof(int)); //动态数组pa* main() { int i,n,*pa; scanf(”%d”,n); //动态输入n pa=(int *)malloc(n*sizeof(int));//生成动态数组*pa for (i=0;in;i++) *(pa+i)=2*i; //指针法引用数组元素,赋值 for (i=0;in;i++) printf(“%d,”,*(pa+i)); //输出数组元素0,2,4,6,... for (i=0;in;i++) scanf(“%d”,pa[i]); //下标法引用数组元素, 输入 for (i=0;in;i++) printf(%d,,pa[i]); //输出数组元素 free(pa); //释放(销毁)数组空间 } 5.2数组的顺序表示和实现 5.2.1顺序表示(顺序存储结构) 1.以行序为主序的顺序存储方式 左边的下标后变化,右边的下标先变化 2.以列序

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档