欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    维数组与指针的讲解.ppt

    • 资源ID:6016199       资源大小:285.50KB        全文页数:31页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    维数组与指针的讲解.ppt

    好好考(),全国计算机等级考试二级C语言,第12讲 二维数组与指针,二维数组的定义数组元素的引用及初始化二维数组和指针二维数组名和指针数组作为实参二维数组程序举例真题分析,第一节 二维数组的定义,定义形式:数据类型数组名常量表达式1常量表达式2数组元素的存放顺序内存是一维的按行序优先,如:int a32;,int a32,a01,a10,a11,a20,a21,a00,a00 a01a10 a11a20 a21,例 int a34;,二维数组的理解:特殊的一维数组,每个元素ai各包含4个元素分别为:ai0,ai1,ai2,ai3,二维数组a由3个元素组成:a0、a1、a2,a01,a02,a03,a10,a11,a00,a13,a20,a21,a22,a23,a12,a0,a1,a2,分行全部初始化,第二节 二维数组的初始化及引用,第二节 二维数组的初始化及引用,分行部分初始化,分行初始化,省略第一维的大小,第二节 二维数组的初始化及引用,按元素排列顺序初始化,第二节 二维数组的初始化及引用,按元素排列顺序部分初始化,第二节 二维数组的初始化及引用,按元素排列顺序初始化,省略第一维大小,第二节 二维数组的初始化及引用,引用形式 数组名下标下标,第二节 二维数组的初始化及引用,如:int a23;可以引用的数组元素有:a00,a01,a02,a10,a11,a12;,二维数组的地址,对于一维数组:(1)数组名array表示数组的首地址,即array0的地址;(2)数组名array是地址常量(3)array+i是元素arrayi的地址(4)arrayi*(array+i),第三节 二维数组和指针,对于二维数组:(1)a是数组名。(2)包含三个元素:a0,a1,a2。每个元素ai又是一个一维数组,包含4个元素:ai0、ai1、ai2、ai3,int a34;,二维数组的地址,对二维数组 int a34,有a-二维数组的首地址,即第0行的首地址a+i-第i行的首地址ai*(a+i)-第i行第0列元素的地址ai+j*(a+i)+j-第i行第j列元素的地址*(ai+j)*(*(a+i)+j)aij,a+i&ai,表示第i行首地址,指向行ai*(a+i)&ai0,表示第i行第0列元素地址,指向列,2000,2004,2010,2014,2020,2024,a,a+1,a+2,二维数组的地址,二维数组元素表示形式:(1)a12(2)*(a1+2)(3)*(*(a+1)+2)(4)*(&a00+1*4+2),首元素地址表示:(1)a+1(2)&a10(3)a1(4)*(a+1),行指针,列指针,int a34;,元素地址表示:(1)&a12(2)a1+2(3)*(a+1)+2(4)&a00+1*4+2,二维数组的地址,二维数组的地址,指向二维数组元素的指针变量,例 指向二维数组元素的指针变量,main()static int a34=1,3,5,7,9,11,13,15,17,19,21,23;int*p;for(p=a0;pa0+12;p+)if(p-a0)%4=0)printf(n);printf(%4d,*p);,通过指针数组来引用二维数组元素,若有以下定义:int*p3,a34,i,j;,表示p是一个数组名,该数组类型为指针类型,即数组的3个元素均为指针类型的数据。注意:int*p4与int(*p)4代表不同的含义。,指针数组用法举例,main()static int a34=1,3,5,7,9,11,13,15,17,19,21,23;int i,j,*p3;for(i=0;i3;i+)pi=ai;for(j=0;j4;j+)printf(%d,*(pi+j);printf(n);,pij,p0=*a;p0=,*(ai+j),aij,定义形式:数据类型(*指针名)数组大小如:int(*p)4;,()不能少int(*p)4与int*p4不同,p的值是一维数组的首地址,p是行指针,可让p指向二维数组的某一行 如:int a34,(*p)4=a;,一维数组指针变量维数和二维数组列数必须相同,通过指向一维数组的指针变量来引用数组元素,一维数组指针变量维数和二维数组列数必须相同,a00,a01,a10,a11,a20,a21,a02,a03,a12,a13,a22,a23,p,p+1,p+2,p0+1或*p+1,p1+2或*(p+1)+2,*(*p+1)或(*p)1,*(*(p+1)+2),int a34,(*p)4=a;,通过指向一维数组的指针变量来引用数组元素,int a34,(*p)4;p=a;,main()static int a34=1,3,5,7,9,11,13,15,17,19,21,23;int i,j,(*p)4;for(p=a,i=0;i3;i+,p+)for(j=0;j4;j+)printf(%d,*(*p+j);printf(n);,a00,a01,a10,a11,a20,a21,a02,a03,a12,a13,a22,a23,p,p,p,*(*a+j),p0j,通过指向一维数组的指针变量来引用数组元素,若 int a34,(*p1)4=a;,第四节 二维数组名和指针数组作为实参,指针的数据类型小结,第五节 二维数组程序举例,将二维数组行列元素互换,存到另一个数组中,1:a00,b002:a01,b103:a02,b204:a10,b015:a11,b116:a12,b21,真题分析,2008年4月(24)以下错误的定义语句是()。A)int x 3=0,1,1,2,3;B)int x43=1,2,3,1,2,3,1,2,3,1,2,3;C)int x4=1,2,3,1,2,3,1,2,3,1,2,3;D)int x 3=1,2,3,4;,答案:C,真题分析,2008年4月(26)若有定义:int a23;,以下选项中对a 数组元素正确引用的是()。A)a2!1 B)a23C)a 03 D)a12!1,答案:D,真题分析,2008年9月(35)有以下程序#include#define N 4void fun(int a N,int b)int i;for(i=0;iN;i+)bi=aii;main()int x N=1,2,3,4,5,6,7,8,9,10,yN,i;fun(x,y);for(i=0;iN;i+)printf(%d,yi);printf(n);程序的运行结果是()。A)l,2,3,4,B)1,0,7,0,C)1,4,5,9,D)3,4,8,10,答案:B,2 3 0 0 0 0 6 7 89 10 0 0,真题分析,2008年9月(36)有以下程序#include int fun(int(*s)4,int n,int k)int m,i;m=s0k;for(i=l;im)m=sik;return m;main()int a44=1,2,3,4),11,12,13,14,2l,22,23,24,31,32,33,34;printf(%dn,fun(a,4,0);程序的运行结果是()。A)4 B)34 C)31 D)32,答案:C,2 3 411 12 13 14 21 22 23 2431 32 33 34,真题分析,2008年9月(12)以下程序按下面指定的数据给x 数组的下三角置数,并按如下形式输出,请填空。43 72 6 91 5 8 10,答案:【12】i【13】n,#include main()int x44,n=0,i,j;for(j=0;j=j;【12】)n+;xij=【13】;for(i=0;i4;i+)for(j=0;j=i;j+)printf(%3 d,xij);printf(n);,知识点分析,题型:上机、笔试都有。重点掌握:二维数组的定义、元素的引用及初始化的方法用指针表示对二维数组元素及其地址的方法数组名做函数的参数,

    注意事项

    本文(维数组与指针的讲解.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开