计算机二级C++ 九一.pptVIP

  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文档。上传文档
查看更多
计算机二级C九一

回顾指针 2.int **p,*a,b=10; p=a; a=b; 真题: 1.有以下程序: #include stdio.h main() {int n,*p=NULL; *p=n; printf(“input n:”); scanf(“%d”,p); printf(“output n:”);printf(“%d\n”,p); } 该程序想通过指针p为变量n读入数据并输出,但有多处错误。以下语句正确的是; A int n,*p=NULL; B *p=n; C scanf(“%d”,p); D printf(“%d\n”,p); 思考:用变量存储一系列数据,如学号? 用int i=001,j=002,h=003…….w=024…? 如何简化解决,开辟一系列空间用变量可以连续存放一系列数据或字符 为什么要使用数组3-3 声明一维数组 int a[8]; 1.int 是类型名,只能存放整型 2.a是数组名 3.数组a中有8个元素,分别为a[0],a[1]…a[7].即下标从0开始 4.执行完此语句的结果是:为数组a分配8个连续的单元,每个单元占4个字节 理解:数组a中有8个变量,变量名称依次为a[0],a[1]…a[7]. 9.1.3初始化一维数组 为一维数组动态赋值 数组应用1 数组应用2 一维数组和指针 回顾指针:存放一个变量地址的变量(指向一个变量) 9.2一维数组和指针 C语言中,数组名可以认为是一个存放地址值的指针变量名,其中的地址值是数组第一个元素的地址。 例如:int a[2];数组名a可以认为是一个指针变量名,存的是数组的第一个元素a[0]的值 注意:float a[10],*p,x; a=x;//不合法,声明一个数组的同时,a中就确定了 永远指向a数组的首地址 a++ ;不合法 在数组中给指针赋初值: int* p,a[2]; p=a[0];合法 p=a;合法 通过指针从终端读入数据; for(p=a,k=0;k10;k++) {scanf(“%d”,p),p++}; 通过数组从终端读入数据; for(k=0;k10;k++) scanf(“%d”,a[k]) 9.2.3通过数组的首地址引用数组元素 1.int a[7]; a相当于是指针变量,是数组元素的首地址。 则: a值相当于a[0] a+1相当于a[1]… 思考:*a,*(a+1)代表什么呢? * a[0],* a[1]代表什么呢? 故: *a和* a[0]即为 a[0] *(a+1)和* a[1]即为a[1] *(a+k)和* a[k]即为a[k] 9.2.3通过指针引用数组元素 1.int a[7],*p; p=a; p=a[0]; 则:对于数组元素a[0],可以用*p引用;a[1]可以用*(p+1) 引用,a[k]可以用*(p+k)引用 int *p,s[10],i; p=s; 总结: 表示数组s中的第i个元素: s[i],*(p+i),*(s+i),*s[i],p[i] 表示数组s中的第i个元素地址: s[i],p+i,s+i, 注意: 虽然数组名s可以看做一个指针变量,但是s是不可变的,而p是可变的。即s++,s=p…都是不合法的 例:输出数组中的全部元素 有三种方法: (1)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]); } 9.3函数之间对一维数组和数组元素的引用 1、数组元素作实参 当调用函数时,数组元素可以作为实参传送给形参,和普通变量一样,即传值调用。形参的改变不会影响实参的值 2、数组名作实参 数组名也可以作为实参传送,数组名本身是一个地址值,因此是地址值的传递。形参的改变会影响实参的值 例题9.2编写程序,通过一个函数给主函数中定义的数组输入若干大约或等于0的整数,用负数作为结束标志;调用另一个函数输出该数组中的数据。 分析: main{声明一个数组s;

文档评论(0)

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

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

1亿VIP精品文档

相关文档