哈工大c语言指针实验题,C语言程序设计_哈工大(2):指针与数组.pdf

本文详细介绍了C++中指针与数组的相关概念,包括数组指针的意义、数组元素指针、数组名作为函数参数的使用。通过实例讲解了如何通过指针引用数组元素,以及指针运算的规则,如*p++、*(++p)和(*p)++的区别。同时提供了编程训练,指导如何利用指针找到数组中的最大值和最小值。强调了指针在移动后需要重新定位到数组头部,以及数组名不可被赋值的重要注意事项。
摘要由CSDN通过智能技术生成

圳 职 业 技 术 学 院Shenzhen Polytechnic

七单元(2):指针与数组

教学内容 指针与数组

教学目标

应知 数组的指针的意义,数组元素的指针的意义,数组名作函

数参数

应会 通过指针引用数组元素,数组名与数组的指针作函数参数

难点 指针引用数组时指针的定位

学方法

项目递进驱动教学法,通过数组的几种表示方法引入数组的指针

学过程

1. 提问与复习

what’s a point of a variable?

What’s is the characteristic of the function result when the parameter is

a pointer?

2. 输出数组 int a[10]各元素的值,采用如下三种方法:

下标法(复习数组的定义、引用,数组下标从0 开始) (提问)

数组名寻址法 (引入数组的地址) (学生易错:数组名是一个常量,不能出现在赋

值号的左边)

通过数组名计算数组元素的地址,找出元素的值

指针法 (引入数组的指针) (指向数组的指针是一个变量,可以有运算)

用指针变量指向数组元素

3. 将第2 步数组的输入采用指针实现,再用指针方法输出(观察程序,修改

程序,学生易错:必须明确指针当前所指的元素)

4. 通过实例熟悉指针运算(指向数组的指针变量在使用中要注意):

*p++ 等价于* (p++):符合++运算符的规律

*p++ 与 *(++p) :符合++运算符的规律

算机系乌云高娃 Wygw@21 第 54 页 共 83 页

圳 职 业 技 术 学 院Shenzhen Polytechnic

(*p)++ :p 所指向的元素值加1

p+n ,(p-n):将指针从当前位置前进或后退n 个元素

p2-p1 :表示两指针变量之间数组元素的个数,而不是指针的地址之差

5. 编程训练:通过指向数组的指针,将数组a 中的最大数与最小数输出

定义数组int a[10],指针int *p,存放最大值最小值的变量max 和min

将指针指向该数组,p=a;

从键盘输入数组数据 (采用指针法)

将max 与min 赋值为a[0]

在循环中依次进行比较,将比较大、比较小的元素值存入max,min

输出max 和min ,应为数组a 中的最大值和最小值

6. 编程训练:通过指向数组的指针,将数组a 中的最大数与最小数输出

实参和形参都用数组名

实参用数组名,形参用指针

实参用指针,形参用数组名

实参和形参都用指针

学生容易出错的地方

指向数组的指针移动后没有重新指向数组头部

对数组名赋值,数组名是常量不能进行赋值

问题与讨论

形参是数组的指针时,实参可以是什么?

数组名和指向数组的指针有什么异同?

小结 (可由问题与讨论方式给出)

数组的指针是数组在内存中的起始地址,数组元素的指针是数组元素在内存中的起

始地址

数组名是常量,代表数组的起始地址,也就是第一个数组元素的地址

算机系乌云高娃 Wygw@21 第 55 页 共 83 页

圳 职 业 技 术 学 院Shenzhen Polytechnic

指向数组的指针变量同样要经过定义、赋值才能引用

指向数组的指针变量可以改变本身的值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值