第十五讲函数3.ppt-高级语言课程教学网站-绍兴文理学院
第七章 函 数(3) * AAA BBBB TKS * (第十七讲) 绍兴文理学院 计算机系计算机应用教研室 让黑匣子为我们工作 AAA BBBB 一、教学目的:明确数组作为函数参数的传递方法;掌握主调函数和被调函数操作一维、二维数组的实质;掌握数组数据参数传递的程序设计;程序设计能力的训练。 二、教学重点:数组作为函数参数的传递方法;主调函数和被调函数操作一维、二维数组的实质;数组数据参数传递的程序设计;程序设计能力的训练。 三、教学难点:二维数组作为函数参数的用法;利用数组进行算法和程序设计。 四、教学过程: AAA BBBB 也谈最值互换 Problem Description 给你一个n行m列的矩阵,请你找出最大数与最小数并交换它们的位置。若最大或最小数有多个,以最前面出现者为准(矩阵以行优先的顺序存放,请参照Sample Input中第一组测试数据)。 Input 测试数据有多组,处理到文件尾。每组测试数据的第一行输入2个整数n,m(1n,m20),接下来输入n行数据,每行m个整数。 Output 每组测试数据输出处理完毕的矩阵。 —用数组作为函数参数实现 ? TKS * * AAA BBBB §7.补充 数组与函数 1、数组与函数概述 由于函数不能返回多个值,所以在调用函数后不可能返回数组的全部元素的值。数组与函数之间只存在如下关系。 (1) 向函数的形参传送数组元素。 (2) 调用函数后返回一个数组元素值。 (3) 向函数的形参传递数组名(数组的地址)。 (4) 函数对数组进行操作 2、函数对数组进行操作 用函数实现冒泡排序为例说明。 #include iostream using namespace std; #define N 8 void disp(void); void bubblesort(void); int a[N]={9,8,3,7,5,2,6,1}; int main(void) {bubblesort(); disp(); return 0; } 补充例1 函数实现冒泡排序 C+17_1 TKS * * AAA BBBB void bubblesort(void) {int i,j,temp; for(i=N-1;i0;i--) for(j=0;ji;j++) if(a[j]a[j+1]) {temp=a[j];a[j]=a[j+1]; a[j+1]=temp; } } void disp(void) {int i; coutendl排序结果:; for(i=0;i=N-1;i++) couta[i] ; coutendl; } 3、向函数的形参传递数组名 向函数传送数组名,就是以数组名作为参数。是“地址传送”。 不是把整个数组全部元素的值通过“值传送”方式传送给形参,而是传送数组首元素(数组名)的地址。 补充例1 函数实现冒泡排序 C+17_1 TKS * * AAA BBBB #include iostream using namespace std; #define N 8 void disp(int []); void bubblesort(int d[N]); int main(void) {int x[N]={9,8,3,7,5,2,6,1}; bubblesort(x); disp(x); return 0; } void bubblesort(int a[N]) {int i,j,temp; for(j=0;j=N-2;j++) for(i=0;i=N-2-j;i++) if(a[i]a[i+1]) {temp=a[i];a[i]=a[i+1]; a[i+1]=temp; } } void disp(int c[]) {int i; coutendl排序结果:; for(i=0;i=N-1;i++) coutc[i] ; coutendl; } 补充例2 向函数的形参 传递数组名 C+17_2 TKS * * AAA BBBB (1) 变量参数与数组名参数之间的比较 如果在被调用函数中使形参数组元素的值改变了,也就意味着主调函数中实参数组元素的值发生变化。 代码 主调函数 变量 读/写 代码 被调函数 实体不存在 变量参数传递 代码 主调函数 数组名 读/写 代码 被调函数 实体不存在 (a1)主调函数的代码读/写变量,被调函数实体不存在 (a2)主调函数的代码读/写数组元素,被调函数实体不存在 (a) 函
您可能关注的文档
最近下载
- 重庆市各地方周氏支族源流(1-170支族).doc VIP
- 建筑工程质量管理体系流程图.docx
- 淋巴系统核医学检查课件.ppt VIP
- (高清版)B-T 6003.1-2022 试验筛 技术要求和检验 第1部分:金属丝编织网试验筛.pdf VIP
- (已压缩)TUCST007-2020房屋建筑与市政基础设施工程施工安全风险评估技术标准.docx VIP
- 2026年国家公务员考试申论真题及参考答案(考生回忆版).docx VIP
- 部编版语文二年级上册期中常考七大重点题型专项训练.docx VIP
- 机器人操作系统(ROS)及仿真应用 课件全套 第1--9章 Linux Ubuntu入门基础--- 基于ROS的服务机器人应用实例.ppt
- 压疮的预防及护理技术操作考核评分标准编辑.docx VIP
- 高温超导材料在量子计算中的应用前景.docx VIP
原创力文档

文档评论(0)