软件08-1程序设计基础第22讲教案.doc

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

答疑时间: 每周四晚自习 答疑地点:2311教室 第 22 次 课程名称 程序设计基础 任课教师 曹 哲 授课班级 软件08-1班 授课地点 1418 授课时间 2009 年 5 月 18 日星期一 第 3 小节 ~ 第 4 小节 任课教师 课 题: 10.3 数组与指针 主要教学内容: 指向数组元素的指针变量的定义,引用;引用数组元素的四种方法;数组名作函数参数 教学目标: 使学生掌握指向一维数组的指针的定义、引用方法;掌握一维数组名作函数参数的设计方法。 重 点: 一维数组指针的用法。 难 点: 指针带下标的概念、数组名作函数参数的实现机制。 教学过程设计: 首先简单复习变量的指针、指针变量、直接访问、间 接访问等几个有关指针的概念,作为新课的基础;新内容为10.3节数组与指针,先介绍数组的指针、数组元素的指针的概念、提出引用数组元素的两大方法——下标法和指针法,并指出指针法的优点,为什么呢?于是,接着介绍指向数组元素的指针变量的定义、引用,通过指针变量引用数组元素的方法,举例讲解引用数组元素的4种 方法,并进行比较,总结出指针法的优点;然后讲解数组名作函数参数设计方法,详细讲解例10.7,然后总结出数组名作函数参数的4种情况。最后进行小结。 教学手段: 黑板教学、在讲解时,以实例讲解,以便突破难点;并采用实例和必要的直观图形来讲解的手段。 作 业: 认真看书,补1:用指针对10个整数按升序或降序排序。 教学内容: 见下页 10.3 数组与指针 复 习 变量的指针: 一个变量的地址称为该变量的指针。 指针变量: 专门存放某一类型变量的地址的变量。 直接访问 按照变量的地址直接存取变量的值 例如,int a; a = 3 ; 间接访问 int a ; int * p ; p = a ; *p = 3 ; 数组的指针——数组的起始地址。 数组元素的指针——数组元素的地址。 下标法,如a[3] 引用数组 指针法 指针法的优点: 目标程序质量高—占内存少,速度快 一、指向数组元素的指针变量的定义和引用与指向变量的指针变量相同 例:int a[5] ; int *p ; p=a[0]; 数组名代表数组的首地址。 ∴p=a[0] ; p=a ; 在定义指针变量时可初始化。 int *p=a;或int *p=a[0]; (数组名a实际相当于一个指针常量。) 二、通过指针引用数组元素 设p=a[2] ; P+1指向数组下一元素 C规定 P–1 指向数组上一元素 设d是一个数组元素所占字节数 1 — char 2 — int 其中d= 4 — float 8 — double p + 1 = p中地址+1×d 则: p – 1 = p中地址–1×d 二、通过指针引用数组元素 若p的值为a[0],则: (1)p+i和a+i——a[i] (2)*(p+i)或*(a+i)——a[i] 编译时,对a[i]处理成*(a+i) 即 首地址+相对偏移量=要找元素地址。 如:a——1000,整型; 则:a[0]——1000 a[3]=a+3=1000+3×2=1006 [ ]——变址运算符,a[i]=a+i计算地址。 (3)指向数组的指针变量也可带下标 如:p[i] ( a[i] ( *(a+i) ( *(p+i) ∴引用数组元素:  ①下标法——如a[i]  ②指针法——*(p+i)或*(a+i) 其中a为数组名,p=a。 例10.5 输出数组全部元素——四种方法 1)下标法 #include stdio.h void main() { int a[3]={ 5,9,7}, i ; for( i = 0;i3;i++) printf(“ %d “, a[i]); } 2)通过数组名计算元素地址,找出元素的值 #include stdio.h void main() { int a[3]={ 5,9,7}, i ; for( i = 0;i3;i++) printf(“ %d “,*(a+i)); } 3)用指向数组元素的指针变量

文档评论(0)

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

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

1亿VIP精品文档

相关文档