模块四 程序设计之复杂数据处理-计算机编程基础(C语言)同步教学(清华大学出版社)

| 99页
| 127人阅读
| 1人下载
普通

内容正文:

模块四 程序设计之复杂数据处理 任务名称 知识点 学习目标 任务一 交换两个变量的值 地址与指针; 指针变量的定义; 指针变量的引用; 指针变量的运算; 指针变量作形参的使用。 指针是C语言的一个重要概念,也是C语言的精华,在程序设计中灵活使用指针不仅使程序简洁、紧凑、高效,还可以借用指针处理复杂的问题。本课题的学习目标是: 1.正确理解地址、指针与指针变量; 2.正确定义指针变量,理解指针指向的含义; 3.能够正确使用指针变量进行简单的程序设计; 4.理解指向数组的指针及指针变量的定义方法; 5.会使用指针引用数组及数组元素; 6.会利用指针处理字符串数据。 任务二 回文诗的生成 指针指向数组; 指针指向数组元素; 通过指针变量引用数组元素; 通过指针变量处理字符串。 学习导表 课题一 指针及指针的运用 生活场景再现 依据对【生活场景再现】的理解,借助于C语言的指针概念,设计一个函数用于将任意两个变量的值进行对调。 ▲任务要求 保险柜 保险柜编号 客户 指针及指针的应用 任务一 交换两个变量的值 课题一 指针及指针的运用 ▲任务分析 数组名作参数:形参值变化实参值改变,传递的是地址,形参与实参共享的是同一个地址。 任务一 交换两个变量的值 利用函数对调两个变量的值,就像对调两个保险柜内存放的物品,由银行负责对调,你只要确保银行给你的保险柜对应的位置编号(地址)与物品对应就好。 9001 1001 因此,只要将地址内的内容(数据)交换一下,也就间接实现了变量值的对调。 课题一 指针及指针的运用 观察思考1 不同之处: int i=0; float i=1.0; 说说这两个变量的定义有什么不同。 (1)变量名相同; (2)变量类型、变量的值都不同; (3)存储空间大小及地址也不相同; 课题一 指针及指针的运用 任务一 交换两个变量的值 观察思考1 3.若有以下程序: //文件名:m4p1t1-ex1-3.cpp #include <stdio.h> void main( ) { int i,*p_i; float f,sum1,sum2,*p_f; p_i=&i; p_f=&f; scanf("%d,%f",p_i,p_f); sum1=*p_i+*p_f; sum2=i+f; printf("*p_i+*p_f =%.1f ",sum1); printf("i + f= %.1f ",sum2); } 试问: 输入12,50↙后,程序的运行结果是什么。 *p_i+*p_f=62.0 i + f =62.0 程序的运行结果: 课题一 指针及指针的运用 任务一 交换两个变量的值 知识准备一:指针与指针变量 一、指针与指针变量 课题一 指针及指针的运用 变量使用特点:“先定义后使用” 内存地址-----编号 1.内存与内存地址 2.变量名、变量的值与变量的地址 如有以下变量定义: int x=-12; char ch= 'G'; 变量名:x、 ch; 变量值:-12 、'G'; 变量地址:0006H、4003H(内存单元 的地址) 任务一 交换两个变量的值 3.指针与指针变量 指针:“内存单元的地址”,也就是某个变量的地址。 指针变量:专门用于保存内存单元地址的变量,即,存放的是变量的地址。 课题一 指针及指针的运用 4.指针变量的定义与赋值 形式1:基类型 * 指针变量名; (仅定义指针变量) 形式2:基类型 * 指针变量名=变量地址; (定义并初始化指针变量) 指针变量定义时的类型与所指变量的类型一致,如果我们将变量的类型称为基类型。 那么指针变量的定义形式如下: 知识准备一:指针与指针变量 任务一 交换两个变量的值 课题一 指针及指针的运用 定义形式 形式1:基类型 * 指针变量名; (仅定义指针变量) 形式2:基类型 * 指针变量名=变量地址; (定义并初始化指针变量) 举例 形式1 int * p1; float * p2; char * p3; 形式2 int x; int * p1=&x; float y; float * p2=&y; char z; char * p3=&z; 含义 指针变量p1是指向int型变量x的指针,其值只能是整型变量的地址; 指针变量p2是指向float型变量y的指针,其值只能是实型变量的地址; 指针变量p3是指向char型变量z的指针,其值只能是字符型变量的地址; 说明 1.定义时,*仅表示p1为指针变量,即变量名称是p1; 2.基类型代表指针变量p1的值是该类型变量的地址; 3.指针变量p1只能存放

资源预览图

模块四 程序设计之复杂数据处理-计算机编程基础(C语言)同步教学(清华大学出版社)-第1页
1
模块四 程序设计之复杂数据处理-计算机编程基础(C语言)同步教学(清华大学出版社)-第2页
2
模块四 程序设计之复杂数据处理-计算机编程基础(C语言)同步教学(清华大学出版社)-第3页
3
模块四 程序设计之复杂数据处理-计算机编程基础(C语言)同步教学(清华大学出版社)-第4页
4
模块四 程序设计之复杂数据处理-计算机编程基础(C语言)同步教学(清华大学出版社)-第5页
5
模块四 程序设计之复杂数据处理-计算机编程基础(C语言)同步教学(清华大学出版社)-第6页
6

由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。