计算机二级C语言辅导 第9章 一维数组详解.pptVIP

计算机二级C语言辅导 第9章 一维数组详解.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第九章 数组 #includestdio.h main() { int a[]={1,2,3,4,5,6},*p; p=a; *(p+3)+=2; printf(“%d,%d\n”,*p,*(p+3)); } 例 输出数组的全部元素 (设10个元素,整型) 2、用数组名计算数组元素的地址。 (效率与下标法相同,不常用) main() { int a[10];? int i;? for(i=0;i10;i++) ? ?? {scanf(%d, a[i]);?} printf(\n);? for(i=0;i10;i++)? ? ?{printf(%d ,*(a+i));} } 3、用指针访问各元素。 (常用,效率高) main() { int a[10];? int *p, i;? for(i=0;i10;i++)? ?? {scanf(“%d”, a[i]);?} printf(“\n”); for(p=a;p(a+10);p++) ? ? { printf(%d ,*p);} } 注意: 1、若指针p指向数组a,虽然p+i与a+i、*(p+i)与*(a+i)意义相同,但仍应注意p与a的区别,a是地址常量,而p是指针变量。例、 for(p=a; a(p+10); a++) a代表数组的首地址,是不变的,a++不合法 2、指针变量可以指向数组中的任何元素,注意指针变量的当前值。 * * 一维数组 一、一维数组的定义: 定义方式: 类型说明符 数组名[常量表达式]; 例: int a[10]; float fa[100], fb[100]; char s1[20], s2[40]; 注意: 1.常量表达式表示数组元素个数,下标变化范围0到N-1 2.C不允许动态数组 常量表达式中只能有常量和符号常量, 不能有变量。 一维数组 二、一维数组的引用: 数组必须先定义, 后使用, 而且只能逐个引用数组元素,而不能一次引用整个数组。 数组的表示形式: 数组名[下标表达式] 下标可以是整型常量或整型表达式 int a[N]; 下标变化范围0到N-1 一维数组的存储结构 C编译系统为所定义的数组变量在内存中分配一片连续的存储单元,诸元素按数组下标从小到大连续排列,每个元素占用相同的字节数。 例如,定义数组a如下: short int a[5]; 数组a的存储示意图如下图所示: 1000 a[0] (a) a[1] a[2] a[3] a[4] 1006 a[0] (b) 8 8 2 4 123 a[1] a[2] a[3] a[4] short int a[5]={8,8,2,4,123}; 一维数组 由于一维数组是顺序存储在内存中,数组名代表了数组在内存的起始地址,而每个数组元素字节数相同,因此,根据数组元素序号可以求得数组各元素在内存的地址,并实现对数组元素进行随机存取。 一维数组 一维数组 1.从键盘上得到五个数赋给数组a main( ) { int a[5], i, j t; printf(“input 5 numbers:\n”); for(i=1; i5; i++) { scanf(“%d”, a[i]); printf(“%d”,a[i]); } } 一维数组和指针 1.一维数组元素的地址和一维数组名 例:int a[10]; 数组元素a[0]----a[9],都是整型变量,因此都有一个地址: a[i] (0=i=9) 例:int a[10]; 数组名是表示数组首地址的地址常量 a [0] a [1] a [2] a [3] a [9] ... 整型指针p a [0] p 一维数组和指针 一、一维数组元素的地址和一维数组名 a[0] a[1] a[2] a[3] a[9] ... 整型指针p **** a 设:int a[10],*p; 数组名是表示数组首地址的地址常量 对于一维数组a,数组名a是数组元素a[0]的地址,即a[0]与a是等值的。属性也相同,都是int 的地址。 a[1]是数组元素的地址; a[2]是数组元素的地址; a[i](0=i=9有效)是数组元素的地址; a++; a=a[3]; a[0] a[1] a[2] a[3] a[9] ... 整型指针p a[0] p (1)可以通过数组名来表示数组元素的地址: a+1是数组元素a[1]的地址;

文档评论(0)

xuefei111 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档